‫داده‬ ‫پایگاه‬‫ها‬
faradars.org/fvsft105
‫مدرس‬:
‫شیرافکن‬ ‫فرشید‬
‫تهران‬ ‫دانشگاه‬ ‫دکتری‬ ‫دانشجوی‬
(‫ارشد‬ ‫کارشناسی‬ ‫و‬ ‫کارشناسی‬:‫افزار‬ ‫نرم‬ ‫کامپیوتر‬( )‫دکتری‬:‫انفورماتیک‬ ‫بیو‬)
‫ها‬ ‫داده‬ ‫پایگاه‬
1
‫س‬‫ر‬‫د‬‫ا‬‫ﺮ‬‫ﻓ‬
FaraDars.org
‫داده‬ ‫پایگاه‬‫ها‬
faradars.org/fvsft105
‫فصل‬‫اول‬:‫تعاریف‬‫اولیه‬
‫فصل‬‫دوم‬:‫مدل‬‫رابطه‬‫ای‬
‫فصل‬‫سوم‬:‫نمودار‬ER
‫فصل‬‫چهارم‬:‫جبر‬‫رابطه‬‫ای‬
‫فصل‬‫پنجم‬:SQL
‫فصل‬‫ششم‬:‫وابستگی‬‫ها‬
‫فصل‬‫هفتم‬:‫نرمال‬‫تر‬‫سازی‬
2
‫فهرست‬
‫س‬‫ر‬‫د‬‫ا‬‫ﺮ‬‫ﻓ‬
FaraDars.org
‫داده‬ ‫پایگاه‬‫ها‬
faradars.org/fvsft105
1-‫سی‬‫جی‬‫دیت‬
2-‫دکتر‬‫رانکوهی‬
3-‫دکتر‬‫حق‬‫جو‬
4-‫سیلبرشاتز‬
5-‫شیرافکن‬
3
‫منابع‬
‫س‬‫ر‬‫د‬‫ا‬‫ﺮ‬‫ﻓ‬
FaraDars.org
‫داده‬ ‫پایگاه‬‫ها‬
faradars.org/fvsft105
‫اول‬ ‫فصل‬:‫اولیه‬ ‫تعاریف‬
4
‫س‬‫ر‬‫د‬‫ا‬‫ﺮ‬‫ﻓ‬
FaraDars.org
‫داده‬ ‫پایگاه‬‫ها‬
faradars.org/fvsft105
‫فایل‬‫های‬‫اطالعاتی‬‫که‬‫به‬‫نوعی‬‫به‬‫هم‬‫مرتبط‬،‫هستند‬‫تشکیل‬‫یک‬‫بانک‬‫اطالعاتی‬‫را‬‫می‬‫دهند‬.
‫فایل‬‫شامل‬‫مجموعه‬‫ای‬‫از‬‫رکوردها‬‫می‬‫باشد‬.
‫رکورد‬‫مجموعه‬‫ای‬‫از‬‫فیلدهای‬‫به‬‫هم‬‫مرتبط‬‫است‬.
‫فیلد‬‫کوچکترین‬‫جزء‬‫یک‬‫بانک‬‫اطالعاتی‬‫می‬‫باشد‬.
‫مثال‬‫در‬‫بانک‬‫اطالعاتی‬‫دانشگاه‬‫چندین‬‫فایل‬‫وجود‬‫دارد‬‫مانند‬‫فایل‬‫دانشجویان‬‫که‬‫شامل‬‫چندین‬‫رکورد‬‫اس‬،‫ت‬‫هر‬
‫رکورد‬‫شامل‬‫اطالعات‬‫یک‬‫دانشجو‬‫می‬‫باشد‬‫که‬‫از‬‫چند‬‫فیلد‬‫مانند‬‫شماره‬،‫دانشجویی‬،‫نام‬،‫آدرس‬‫معدل‬‫و‬....‫تش‬‫کیل‬
‫شده‬‫است‬.
‫اولیه‬ ‫مفاهیم‬
5
‫س‬‫ر‬‫د‬‫ا‬‫ﺮ‬‫ﻓ‬
FaraDars.org
‫داده‬ ‫پایگاه‬‫ها‬
faradars.org/fvsft105
‫داده‬:‫پردازش‬ ‫یا‬ ‫ارتباط‬ ‫برقراری‬ ‫برای‬ ‫مناسب‬ ‫و‬ ‫صوری‬ ‫صورت‬ ‫به‬ ‫مفاهیم‬ ‫و‬ ‫ها‬ ‫پدیده‬ ‫نمایش‬.
‫اطالع‬:‫شده‬ ‫پردازش‬ ‫داده‬.
‫است‬ ‫داده‬ ‫معنای‬ ‫اطالع‬ ‫و‬ ‫شده‬ ‫ذخیره‬ ‫واقعا‬ ‫مقدار‬ ‫همان‬ ‫داده‬.
‫پایگاه‬‫داده‬:،‫افزونگی‬ ‫کمترین‬ ‫با‬ ،‫مرتبط‬ ‫بهم‬ ‫و‬ ‫مجتمع‬ ‫صورت‬ ‫به‬ ‫پایا‬ ‫و‬ ‫شده‬ ‫ذخیره‬ ‫های‬ ‫داده‬ ‫از‬ ‫ای‬ ‫مجموعه‬‫تحت‬
‫اشتراکی‬ ‫و‬ ‫همزمان‬ ‫صورت‬ ‫به‬ ‫کاربر‬ ‫چند‬ ‫یا‬ ‫یک‬ ‫استفاده‬ ‫مورد‬ ،‫متمرکز‬ ‫کنترل‬ ‫سیستم‬ ‫یک‬ ‫مدیریت‬.
‫تعریف‬ ‫چند‬
6
‫س‬‫ر‬‫د‬‫ا‬‫ﺮ‬‫ﻓ‬
FaraDars.org
‫داده‬ ‫پایگاه‬‫ها‬
faradars.org/fvsft105
1-‫روش‬‫پایگاهی‬
‫در‬‫این‬‫روش‬‫نیازهای‬‫اطالعاتی‬‫تمامی‬‫قسمتها‬‫مورد‬‫مطالعه‬‫قرار‬‫می‬‫گیرد‬‫تا‬‫بتوان‬‫یک‬‫سیستم‬‫یکپارچه‬(integrated)
‫طراحی‬‫کرد‬.‫در‬‫این‬‫روش‬‫یک‬‫محیط‬‫ذخیره‬‫سازی‬،‫واحد‬‫مجتمع‬،‫واشتراکی‬‫تحت‬‫کنترل‬‫متمرکز‬‫وجود‬‫دارد‬‫که‬‫کارب‬‫ران‬
‫براساس‬‫نیاز‬‫خاص‬،‫خود‬‫پایگاه‬‫خود‬‫را‬‫تعریف‬‫کرده‬‫و‬‫هر‬‫کاربر‬‫تصور‬‫می‬‫کند‬‫که‬‫پایگاه‬‫خود‬‫را‬‫دارد‬.
2-‫روش‬‫فایلینگ‬(‫ناپایگاهی‬)
‫مراحل‬‫اولیه‬‫طراحی‬‫و‬‫تولید‬‫برای‬‫هر‬‫قسمت‬‫به‬‫طور‬‫کالسیک‬‫انجام‬‫شده‬‫و‬‫بعد‬‫از‬،‫طراحی‬‫مشخصات‬‫هر‬‫سیستم‬‫هم‬‫راه‬‫با‬
‫وظایف‬‫آنها‬‫مشخص‬‫می‬‫شود‬.‫برای‬‫ایجاد‬‫محیط‬‫ذخیره‬‫سازی‬‫اطالعات‬‫از‬‫یک‬‫سیستم‬‫فایل‬‫و‬‫برای‬‫برنامه‬‫سازی‬‫از‬‫یک‬
‫زبان‬‫سطح‬‫باال‬‫استفاده‬‫می‬‫شود‬‫و‬‫در‬‫نهایت‬‫برای‬‫هر‬،‫قسمت‬‫یک‬‫سیستم‬‫کاربردی‬‫ایجاد‬‫می‬‫شود‬.
‫کاربردی‬ ‫های‬ ‫سیستم‬ ‫ایجاد‬ ‫روشهای‬
7
‫س‬‫ر‬‫د‬‫ا‬‫ﺮ‬‫ﻓ‬
FaraDars.org
‫داده‬ ‫پایگاه‬‫ها‬
faradars.org/fvsft105
1-‫نرم‬‫افزار‬(-DBMS‫نرم‬‫افزار‬‫شبکه‬-‫برنامه‬‫های‬‫کاربردی‬-‫رویه‬‫های‬‫ذخیره‬‫شده‬)
2-‫سخت‬‫افزار‬(‫ذخیره‬‫سازی‬-‫ارتباطی‬-‫پردازشگر‬)
3-‫کاربر‬(‫موردی‬-‫همیشگی‬)
4-‫داده‬
‫ها‬‫داده‬ ‫پایگاه‬ ‫محیط‬ ‫عناصر‬
8
‫س‬‫ر‬‫د‬‫ا‬‫ﺮ‬‫ﻓ‬
FaraDars.org
‫داده‬ ‫پایگاه‬‫ها‬
faradars.org/fvsft105
‫یک‬‫مدل‬‫داده‬‫ای‬‫شامل‬‫یک‬‫ساختار‬‫داده‬‫است‬.(‫همچنین‬‫شامل‬‫امکانات‬‫عملیات‬‫بر‬‫روی‬‫پایگاه‬‫داده‬‫ها‬‫و‬‫کنترل‬‫جامعیت‬‫پایگاه‬‫داده‬‫ها‬‫است‬.)
‫ساختار‬‫داده‬‫ای‬‫امکانی‬‫است‬‫برای‬‫نمایش‬‫داده‬‫های‬‫موجودیت‬‫ها‬‫و‬‫انواع‬‫ارتباطات‬‫بین‬‫آنها‬.
‫ای‬‫داده‬ ‫ساختارهای‬
9
‫ای‬ ‫داده‬ ‫ساختارهای‬ ‫انواع‬
1-‫ای‬ ‫رابطه‬(RDS)
2-‫مراتبی‬ ‫سلسله‬(HDS)
3-‫ای‬ ‫شبکه‬(NDS)
‫س‬‫ر‬‫د‬‫ا‬‫ﺮ‬‫ﻓ‬
FaraDars.org
‫داده‬ ‫پایگاه‬‫ها‬
faradars.org/fvsft105
1-‫دارد‬ ‫قوی‬ ‫تئوریک‬ ‫مبنای‬.
2-‫کاربر‬ ‫نظر‬ ‫از‬ ‫ساده‬ ‫نمایش‬ ‫دارای‬
3-‫اساسی‬ ‫ساختاری‬ ‫عنصر‬ ‫یک‬ ‫فقط‬ ‫دارای‬(‫جدول‬)
4-‫ارتباطات‬ ‫نمایش‬ ‫امکان‬1:1, 1:N, N:M
5-‫بازیابی‬ ‫دستور‬ ‫و‬ ‫منطق‬ ‫بودن‬ ‫ساده‬
‫ای‬ ‫رابطه‬ ‫ساختار‬ ‫های‬ ‫ویژگی‬
10
‫س‬‫ر‬‫د‬‫ا‬‫ﺮ‬‫ﻓ‬
FaraDars.org
‫داده‬ ‫پایگاه‬‫ها‬
faradars.org/fvsft105
‫معماری‬‫استاندارد‬‫پایگاه‬‫داده‬‫ها‬‫که‬‫توسط‬ANSI‫پیشنهاد‬،‫شد‬‫یک‬‫معماری‬‫سه‬‫سطحی‬‫می‬‫باشد‬.
1-‫خارجی‬ ‫سطح‬(External Level)
2-‫ادراکی‬ ‫سطح‬(Conceputual Level)
3-‫داخلی‬ ‫سطح‬(Internal Level)
‫ها‬‫داده‬ ‫پایگاه‬ ‫معماری‬
11
‫س‬‫ر‬‫د‬‫ا‬‫ﺮ‬‫ﻓ‬
FaraDars.org
‫داده‬ ‫پایگاه‬‫ها‬
faradars.org/fvsft105
‫دهد‬ ‫می‬ ‫نمایش‬ ‫آن‬ ‫اجزاء‬ ‫همه‬ ‫با‬ ‫را‬ ‫ها‬ ‫داده‬ ‫پایگاه‬ ‫معماری‬ ‫زیر‬ ‫شکل‬:
12
‫س‬‫ر‬‫د‬‫ا‬‫ﺮ‬‫ﻓ‬
FaraDars.org
‫داده‬ ‫پایگاه‬‫ها‬
faradars.org/fvsft105
،‫دید‬‫پنجره‬‫ای‬‫است‬‫که‬‫از‬‫آن‬‫کاربر‬‫می‬‫تواند‬‫محدوده‬‫پایگاه‬‫خود‬‫را‬‫ببیند‬‫و‬‫خارج‬‫از‬‫این‬
،‫محدوده‬‫چیزی‬‫نمی‬‫بیند‬.
1-‫دید‬‫خارجی‬:‫دید‬‫کاربر‬‫نسبت‬‫به‬‫داده‬‫های‬‫ذخیره‬‫شده‬‫در‬‫پایگاه‬‫داده‬‫ها‬
2-‫دید‬‫ادارکی‬:‫دید‬‫طراح‬‫نسبت‬‫به‬‫داده‬‫های‬‫ذخیره‬‫شده‬‫در‬‫پایگاه‬‫داده‬‫ها‬
3-‫دید‬‫داخلی‬:‫دید‬DBMS‫نسبت‬‫به‬‫داده‬‫های‬‫ذخیره‬‫شده‬‫در‬‫پایگاه‬‫داده‬‫ها‬
‫دیدها‬ ‫تعریف‬
13
‫س‬‫ر‬‫د‬‫ا‬‫ﺮ‬‫ﻓ‬
FaraDars.org
‫داده‬ ‫پایگاه‬‫ها‬
faradars.org/fvsft105
‫شود‬ ‫می‬ ‫تقسیم‬ ‫قسمت‬ ‫سه‬ ‫به‬ ‫زبان‬ ‫این‬ ‫دستورهای‬:
1-‫ها‬ ‫داده‬ ‫تعریف‬ ‫دستورات‬(DDL)
2-‫ها‬ ‫داده‬ ‫کنترل‬ ‫دستورات‬(DCL)
3-‫ها‬ ‫داده‬ ‫روی‬ ‫عملیات‬ ‫دستورات‬(DML)
‫فرعی‬ ‫ای‬ ‫داده‬ ‫زبان‬(DSL : Data Sub Language)
14
‫س‬‫ر‬‫د‬‫ا‬‫ﺮ‬‫ﻓ‬
FaraDars.org
‫داده‬ ‫پایگاه‬‫ها‬
faradars.org/fvsft105
DSL‫می‬‫تواند‬‫هم‬‫مستقل‬‫و‬‫هم‬‫ادغام‬‫شدنی‬‫باشد‬.
1-IDSL(‫مستقل‬‫از‬‫زبان‬‫میزبان‬)
2-EDSL(‫ادغام‬‫شده‬‫با‬‫زبان‬‫میزبان‬)
‫ادغام‬‫می‬‫تواند‬‫صریح‬‫یا‬‫ضمنی‬‫باشد‬.‫در‬‫حالت‬‫ادغام‬،‫صریح‬‫عین‬‫دستورات‬DSL‫در‬‫برنامه‬‫به‬‫زبان‬‫میزبان‬‫نوشته‬
‫می‬‫شود‬‫و‬‫در‬‫حالت‬‫ادغام‬،‫ضمنی‬‫دستورهای‬DSL‫به‬‫صورت‬‫توابع‬‫فرا‬‫خوانده‬‫می‬‫شوند‬.
‫در‬‫حالت‬‫ادغام‬،‫صریح‬‫محیط‬‫برنامه‬‫سازی‬‫دو‬‫زبانی‬‫است‬‫و‬‫به‬‫دو‬‫کامپایلر‬‫نیاز‬‫دارد‬.
‫انواع‬DSL
15
‫س‬‫ر‬‫د‬‫ا‬‫ﺮ‬‫ﻓ‬
FaraDars.org
‫داده‬ ‫پایگاه‬‫ها‬
faradars.org/fvsft105
‫این‬‫سیستم‬‫یکی‬‫از‬‫نرم‬‫افزارهای‬‫واسط‬‫بین‬‫محیط‬‫فیزیکی‬‫ذخیره‬‫و‬‫بازیاب‬‫ی‬‫و‬
‫محیط‬‫منطقی‬‫برنامه‬‫سازی‬‫می‬‫باشد‬.
DBMS‫به‬‫برنامه‬‫ساز‬‫امکان‬‫می‬‫دهد‬‫تا‬‫پایگاه‬‫داده‬‫های‬‫خود‬‫را‬‫تعریف‬‫کرده‬‫و‬‫د‬‫ر‬
‫آن‬‫عملیات‬‫خود‬‫را‬‫انجام‬‫دهد‬.
‫ها‬ ‫داده‬ ‫پایگاه‬ ‫مدیریت‬ ‫سیستم‬(DBMS)
16
‫س‬‫ر‬‫د‬‫ا‬‫ﺮ‬‫ﻓ‬
FaraDars.org
‫داده‬ ‫پایگاه‬‫ها‬
faradars.org/fvsft105
‫تخ‬ ‫تیم‬ ‫یک‬ ‫با‬ ‫همراه‬ ‫که‬ ‫فنی‬ ‫و‬ ‫علمی‬ ‫مسئولیت‬ ‫با‬ ،‫ها‬ ‫داده‬ ‫پایگاه‬ ‫در‬ ‫متخصص‬ ‫است‬ ‫فردی‬ ‫ها‬ ‫داده‬ ‫پایگاه‬ ‫مدیر‬‫کار‬ ‫صصی‬
‫کند‬ ‫می‬.
‫تیم‬ ‫وظایف‬ ‫از‬ ‫وظیفه‬ ‫چند‬DBA:
1-‫انتخاب‬ ‫در‬ ‫مشارکت‬DBMS‫الزم‬ ‫افزاری‬ ‫نرم‬ ‫و‬ ‫افزاری‬ ‫سخت‬ ‫پیکربندی‬ ‫و‬
2-‫ها‬ ‫داده‬ ‫پایگاه‬ ‫سیستم‬ ‫معماری‬ ‫تعیین‬ ‫مورد‬ ‫در‬ ‫گیری‬ ‫تصمیم‬
3-‫ها‬ ‫داده‬ ‫پایگاه‬ ‫مجدد‬ ‫سازماندهی‬ ‫چگونگی‬ ‫مورد‬ ‫در‬ ‫گیری‬ ‫تصمیم‬
4-‫ها‬ ‫داده‬ ‫پایگاه‬ ‫ادراکی‬ ‫سطح‬ ‫طراحی‬(‫منطقی‬ ‫طراحی‬)
5-‫خارجی‬ ‫شماهای‬ ‫نوشتن‬ ‫و‬ ‫خارجی‬ ‫دیدهای‬ ‫تعیین‬ ‫بر‬ ‫نظارت‬
‫ها‬ ‫داده‬ ‫پایگاه‬ ‫مدیر‬(DBA)
17
‫س‬‫ر‬‫د‬‫ا‬‫ﺮ‬‫ﻓ‬
FaraDars.org
‫داده‬ ‫پایگاه‬‫ها‬
faradars.org/fvsft105
‫وابسته‬‫نبودن‬‫برنامه‬‫های‬‫کاربردی‬‫به‬‫داده‬‫های‬‫ذخیره‬‫شده‬‫را‬‫استقالل‬‫داده‬‫ای‬‫می‬‫نامند‬‫که‬‫مهمترین‬‫اهداف‬‫تکنولو‬‫ژی‬‫پایگاه‬
‫داده‬‫ها‬‫می‬‫باشد‬.‫به‬‫عبارتی‬‫استقالل‬‫داده‬‫ای‬‫عبارت‬‫است‬‫از‬‫تاثیر‬‫ناپذیری‬‫برنامه‬‫های‬‫کاربردی‬‫در‬‫سطح‬‫خارجی‬‫در‬‫ق‬‫بال‬
‫رشد‬‫پایگاه‬‫داده‬‫ها‬‫و‬‫تغییر‬‫در‬‫ساختار‬‫داده‬‫های‬‫عملیاتی‬‫است‬.
‫ای‬ ‫داده‬ ‫استقالل‬
18
‫انواع‬‫استقالل‬‫داده‬‫ای‬:
1-‫استقالل‬‫داده‬‫ای‬‫فیزیکی‬
‫مصونیت‬‫دیدهای‬‫کاربران‬‫و‬‫برنامه‬‫های‬‫کاربردی‬‫در‬‫قبال‬‫تغییرات‬‫در‬‫سطح‬‫داخلی‬–‫فیزیکی‬.
2-‫استقالل‬‫داده‬‫ای‬‫منطقی‬
‫مصونیت‬‫دیدهای‬‫کاربران‬‫و‬‫برنامه‬‫های‬‫کاربردی‬‫در‬‫قبال‬‫تغییرات‬‫در‬‫سطح‬‫ادراکی‬.
‫س‬‫ر‬‫د‬‫ا‬‫ﺮ‬‫ﻓ‬
FaraDars.org
‫داده‬ ‫پایگاه‬‫ها‬
faradars.org/fvsft105
‫کاتالوگ‬‫سیستم‬‫حاوی‬‫داده‬‫هایی‬‫است‬‫در‬‫مورد‬‫داده‬‫های‬‫ذخیره‬‫شده‬‫در‬‫پایگاه‬‫داده‬‫های‬‫کاربر‬.(‫متا‬‫داده‬)
‫استفاده‬‫شود‬ ‫می‬ ‫داده‬ ‫از‬ ‫استقالل‬ ‫افزایش‬ ‫باعث‬ ‫کاتالوگ‬ ‫از‬.
‫گذارد‬ ‫نمی‬ ‫اطالعات‬ ‫بازیابی‬ ‫یا‬ ‫ذخیره‬ ‫سرعت‬ ‫در‬ ‫تغییری‬ ،‫کاتالوگ‬ ‫از‬ ‫استفاده‬.
‫تعریف‬‫شود‬ ‫می‬ ‫ذخیره‬ ‫کاتالوگ‬ ‫در‬ ‫مجازی‬ ‫های‬ ‫جدول‬ ‫تعریف‬ ‫و‬ ‫ها‬ ‫شاخص‬ ‫تعریف‬ ،‫مبنا‬ ‫های‬ ‫جدول‬.
‫شود‬ ‫نمی‬ ‫ذخیره‬ ‫سیستم‬ ‫کاتالوگ‬ ‫در‬ ،‫جداول‬ ‫درون‬ ‫های‬ ‫داده‬ ‫مقادیر‬.
‫سیستم‬ ‫کاتالوگ‬
19
‫س‬‫ر‬‫د‬‫ا‬‫ﺮ‬‫ﻓ‬
FaraDars.org
‫داده‬ ‫پایگاه‬‫ها‬
faradars.org/fvsft105
1-‫داخلی‬ ،‫ادراکی‬ ،‫خارجی‬ ‫شماهای‬
2-‫ها‬ ‫داده‬ ‫ایمنی‬ ‫کنترل‬ ‫ضوابط‬
3-‫سیستم‬ ‫افزاری‬ ‫سخت‬ ‫پیکربندی‬ ‫مشخصات‬
4-‫شده‬ ‫ذخیره‬ ‫های‬ ‫داده‬ ‫فیزیکی‬ ‫سازمان‬ ‫شرح‬
5-‫ها‬ ‫داده‬ ‫به‬ ‫آنها‬ ‫دستیابی‬ ‫حقوق‬ ‫و‬ ‫کاربران‬ ‫مشخصات‬
6-‫کاربردی‬ ‫های‬ ‫برنامه‬ ‫مشخصات‬
7-‫سیستم‬ ‫به‬ ‫متصل‬ ‫های‬ ‫پایانه‬ ‫مشخصات‬
8-‫جامعیت‬ ‫قواعد‬
9-‫شده‬ ‫ذخیره‬ ‫های‬ ‫داده‬ ‫و‬ ‫کاربردی‬ ‫های‬ ‫برنامه‬ ‫بین‬ ‫ارتباط‬
10-‫کاربران‬ ‫توسط‬ ‫شده‬ ‫تعریف‬ ‫توابع‬
‫کاتالوگ‬ ‫محتویات‬
20
‫س‬‫ر‬‫د‬‫ا‬‫ﺮ‬‫ﻓ‬
FaraDars.org
‫داده‬ ‫پایگاه‬‫ها‬
faradars.org/fvsft105
‫تراکنش‬:‫کند‬ ‫می‬ ‫اجرا‬ ‫اطالعاتی‬ ‫بانک‬ ‫محیط‬ ‫در‬ ‫کاربر‬ ‫یک‬ ‫که‬ ‫ای‬ ‫برنامه‬.
‫موفق‬ ‫یا‬ ‫تراکنش‬ ‫یک‬ ‫پایان‬(commit)‫ناموفق‬ ‫یا‬ ‫و‬ ‫است‬(abort).
DBMS‫تا‬ ‫دهد‬ ‫می‬ ‫انجام‬ ‫را‬ ‫هایی‬ ‫کنترل‬ ‫تراکنش‬ ‫هر‬ ‫روی‬ ‫بر‬‫جامعیت‬‫شود‬ ‫تضمین‬ ‫اطالعاتی‬ ‫بانک‬.
‫این‬‫کنترلها‬‫به‬ACID‫معروف‬‫می‬‫باشند‬:
Atomicity‫و‬Consistency‫و‬Isolation‫و‬Durability
‫تراکنش‬(TRANSACTION)
21
‫س‬‫ر‬‫د‬‫ا‬‫ﺮ‬‫ﻓ‬
FaraDars.org
‫داده‬ ‫پایگاه‬‫ها‬
faradars.org/fvsft105
1-‫یکپارچگی‬(Atomicity)
‫شوند‬ ‫نمی‬ ‫اجرا‬ ‫دستورات‬ ‫از‬ ‫هیچکدام‬ ‫یا‬ ‫شود‬ ‫می‬ ‫انجام‬ ‫تراکنش‬ ‫یک‬ ‫دستورات‬ ‫تمام‬ ‫یا‬ ‫که‬ ‫است‬ ‫معنی‬ ‫این‬ ‫به‬.‫خاص‬ ‫این‬‫به‬ ‫یت‬
‫است‬ ‫موسوم‬ ‫هیچ‬ ‫یا‬ ‫همه‬(.‫دیگر‬ ‫حساب‬ ‫به‬ ‫حساب‬ ‫یک‬ ‫از‬ ‫مبلغی‬ ‫انتقال‬ ‫تراکنش‬ ‫مثال‬)
2-‫همخوانی‬(Consistency)
‫کند‬ ‫می‬ ‫منتقل‬ ‫دیگر‬ ‫صحیح‬ ‫حالتی‬ ‫به‬ ‫صحیح‬ ‫حالتی‬ ‫از‬ ‫را‬ ‫بانک‬ ‫شود‬ ‫اجرا‬ ‫تنهایی‬ ‫به‬ ‫اگر‬ ‫تراکنش‬ ‫هر‬ ‫یعنی‬.
ACID
22
‫س‬‫ر‬‫د‬‫ا‬‫ﺮ‬‫ﻓ‬
FaraDars.org
‫داده‬ ‫پایگاه‬‫ها‬
faradars.org/fvsft105
3-‫انزوا‬(Isolation)
‫یعنی‬‫اثر‬‫تراکنش‬‫های‬‫همروند‬‫روی‬‫یکدیگر‬‫چنان‬‫باشد‬‫که‬‫ظاهرا‬‫هر‬‫کدام‬‫به‬‫طور‬‫مجزا‬‫و‬‫در‬‫انزوا‬‫انجام‬‫می‬‫شوند‬.
4-‫پایائی‬(Durability)
‫به‬‫این‬‫معنی‬‫است‬‫که‬‫اثر‬‫تراکنش‬‫هایی‬‫که‬‫به‬‫مرحله‬‫انجام‬(commit)‫می‬‫رسند‬‫ماندنی‬‫است‬‫و‬‫به‬‫طور‬‫تصادفی‬‫از‬‫بین‬
‫نمی‬‫رود‬.‫مثال‬‫در‬‫تراکنش‬‫انتقال‬‫پول‬‫از‬‫حسابی‬‫به‬‫حساب‬‫دیگر‬،‫بعد‬‫از‬‫واریز‬‫مبلغ‬‫تحت‬‫هیچ‬‫شرایطی‬(‫همچون‬‫آتش‬
‫سوزی‬)‫اثر‬‫عمل‬‫انجام‬‫شده‬‫از‬‫بین‬‫نمی‬‫رود‬.
ACID
23
‫س‬‫ر‬‫د‬‫ا‬‫ﺮ‬‫ﻓ‬
FaraDars.org
‫داده‬ ‫پایگاه‬‫ها‬
faradars.org/fvsft105
‫اول‬ ‫فصل‬ ‫پایان‬
24
‫س‬‫ر‬‫د‬‫ا‬‫ﺮ‬‫ﻓ‬
FaraDars.org
‫داده‬ ‫پایگاه‬‫ها‬
faradars.org/fvsft105
‫فرادرس‬ ‫در‬ ‫شده‬ ‫مطرح‬ ‫نکات‬ ‫مبنای‬ ‫بر‬ ‫ها‬ ‫اسالید‬ ‫این‬
«‫ها‬ ‫داده‬ ‫پایگاه‬»
‫تهیه‬‫است‬ ‫شده‬.
‫نمای‬ ‫مراجعه‬ ‫زیر‬ ‫لینک‬ ‫به‬ ‫آموزش‬ ‫این‬ ‫مورد‬ ‫در‬ ‫بیشتر‬ ‫اطالعات‬ ‫کسب‬ ‫برای‬‫ید‬
faradars.org/fvsft105
‫داده‬ ‫پایگاه‬‫ها‬
faradars.org/fvsft105
‫س‬‫ر‬‫د‬‫ا‬‫ﺮ‬‫ﻓ‬
FaraDars.org

آموزش پایگاه داده ها - بخش یکم