صفحه 1:
مقدمهاى بر طراحى بايكاه ool
فصل 2
درس پایگاه داده
دانشگاه صنعتی نوشیروانی بابل
مدرس: مهدی عمادی
m.emadi@nit.ac.ir
درس پایگاه داد
صفحه 2:
یک سئله
* می خواهیم سیستم آموزش ذدانشگاه را پیاده سازی کنیم.
aS owe Ls >
صفحه 3:
مراحل پیادهسازی پایگاه داده
(Requirements Analysis) bls Lbs *
Conceptual Database) ools طراحی مفهومی پایگاه **
(Design
(Logical Database Design) osls «Xl, طراحی منطقی **
* يالايش شماى داده (Schema Refinement)
* طراحى فيزيكى يايكاه داده (65/010] (Physical Database
Application and Security) طراحى برنامه و امنيت *
(Design
صفحه 4:
تحلیل نیازها
(Requirements Analysis)
** چه دادههایی باید ذخیره گردد؟
* چه گزارشهایی نیاز است؟
* چه برنامه ای با این دادهها کار میکند؟
* چه قواعدی بر کسب وکار مورد نظر حاکم است؟
* شناخت وضع موجود
* شناخت نیازهای کاربر
* مصاحبه
* شتاخت وضع مطلوب
صفحه 5:
Ww مثال
یگاه داده داریم که اطلاعات دانشجو استاد و درس در
شود. هر دانشجو می تواند چند درس را اخذ کند. هر
استاد می تواند چند درس در طول یک ترم ارائه نماید.*
درس پایگاه داد
صفحه 6:
. طراحی مفهومی پایگاه داده
(Conceptual Database Design)
* یک توصیف ساده از داده
* زبان مشترک بین پیاده ساز و مشتری (-7)
© اسستفاده آزتمدل موجوویت و رانطه بین موچودیت ها
صفحه 7:
مدل داده ای
* مجموعه ای از ابزار برای بیان
* داده ها
* روابط میان داده ها
۴ مفهوم داده ها
۴ محدودیت حاکم بر داده ها
مدلی = در حال حاضز مرسوم است مدل موجودیت ها و رابطه های بین آنها
(88) است:
* مدلهای دیگری نیز وجود دارد. از قبیل
پایگه داد
صفحه 8:
جرا ما از مدل استفاده می کنیم؟
صفحه 9:
LE
3
Entity-Relationship Jw
* ۴-۳ ی کمدلاز دنیایولقعیلستکه دارلیدو جزء لصلیلست
* موجودیت
Customer, Account *
ره 5-57
depositor *
صفحه 10:
مفاهیم مبنایی
در روش 28 سه مفهوم معنایی وجود دارد و معنای داده های هر
محیط به کمک همین سه مفهوم نمایش داده می شوند:
(Entity) cossege *
(Attribute) aapo5 b cao *
Relation) «41, *
صفحه 11:
VJ
3
نوع موجوديت (Entity)
* نوع موجوديت عبارت است از کلی "شیی" "چیز" “يديده” و بطور
كلى هر آنجه كه مى خواهيم در موردش “اطلاع” داشته باشيم و
شناخت خود را در موردش افزایش دهیم. اعم از اينکه وجود فیزیکی
پا ذهنی داشته باشد.
© تمس دانتقمی جادمه یک یروا اش رو
صفحه 12:
(Attribute) damad> صفت يا
* صفت در واقع خصیصه یا ویژگی یک نوع موجودیت است و هر نوع
موجودیت مجموعه ای از صفات دارد. هر صفت از نظر کاربران یک
K «pli نوع(۲۷0۵6) و یک معنای مشخص دارد.
* مانند: یک شخص دارای یک کد ملی» نام. نام خانوادگی, قد. سن و ... است
که این موارد از صفات یک شخص است.
* صفات را از پنج دیدگاه می توان تقصیم بندی کرد.
صفحه 13:
تقسیم بندی صفات از دیدگاه ۱
* ساده
صفث ساده صفتی است که مقنار آن از لحاظ مسناين ساده یا تجزیه تفدنن باشده بهتاین
معا که آکومعنار آن را (فریک حیطه:مغایی و کاربرة مضخص) به التزاین تجزیه کنی.
مقادیر جزیی حاصله فاقد معنا باشند.
* بولا سمح يام ونوكت مخ بصعت ical asl
* مركب
صقت مركب فعی آننت که آزچی صفت سناده تفگیل شده باشه:به گونه ی که قجزیه
نشدنی باشد و لجزای حاصل از تجزیه» خود صفات ساده (و طبعا دارای معنا در یک کاربرد
مشخص) باشند.
* مقلا صفت تاریخ خود شامل روز؛ ماه و سال است.
پایگه داد
صفحه 14:
تقسیم بندی صفات از دیدگاه ۲
* تک مقداری
۴ صفتتک مقدارق ضفتی است که برای, یک نمونه از یک موجودیت: حناکثر یک مقدار مقدار از
دامثه مقادی را نی گنرددبه بیان ساده.تربه ازایبیک نام صفت, حداکثر یک.مقدار برای تک نمولة
از موجودیت. داشته باشیم.
© معلا شماره حلى؛ یک نمونه ازشفین فقط:یک شمارهعلی امن تواند داشته باشد.
* چند مقداری
* صفت چند مقداری صفتی است که برای بعض یا همه نمونه های نوع موجودیت بیش از يك مقدار.
از دامته مقادیر را می گیرد. به بیان ساده تره به ازاء یک نام صفت. چند مقدار. یرای یک نمونه از
موجودیت داشته باشیم.
* بای مثال ار شفل فرد را یک صفت ری او در نظر ببريمآن شخص می ود چند شغل دشته
درس پایگاه داد
صفحه 15:
تقسیم بندی صفات از دیدگاه ۳
* شناسه یا ناشناسه موجودیت
۴ صفت شناسه موجودیت صفتی است که دو ویژگی داشته باشد:
۴ یکتایی مقدار داشته باشد؛
* یعنی در هیچ دو نمونه از یک موجودیت. مقدارش یکسان نباشد. بنابراين عامل تمييز دو نمونه
از یک موتفودیت انیت
* از این ویژگی ها نتيجه مي شود كه صفت شناسه. از نظر کاربرد شناسای نوع موجودیت است و
ستجايز كتتدة تموته هاى آن توج عو از یکدیگره و همیشه نقاد یرفن مشخمن و موجود
sual
مثلا کد ملی *
* حتی الامکان طول مقادیرش کوتاه باشد.
* مثلاسن افراد
پایگه داد
صفحه 16:
LQ
۴ تقسیم بندی صفات از دیدگاه
کته زر این وا تاذایر
۴ هیچمقدار یعنی: مقدار ناشناخته, مقدار غیر قابل اعمال, مقدار تعریف
نشده.
همیشه :منمکن آنتت مقدار یک ضفت برای برخی از نمونه:های یک
موجودیت: ناشناخته, ناموجود و - باشد.
به زبان دیگری وقتی شما فرم درخواست کاغذی را پر می کنید ممکن از
ادی از قسمتها را خالی بگذارید.
* البته بسیاری از طراحان سیستمها معتقدند. باید طراحی را طوری اصلاح
کرد که امکان بروز صفت هیچمقدار وجود نداشته باشد.
صفحه 17:
تقسیم بندی صفات از دیدگاه ۵
ذخیره شده (واقعی)
صفت ذخیره شده صفتی است که مقادیرش در پایگاه داده ذخیره شده باشند (موجود
باشند) و البته هیچمقدار هم داشته باشد. اگر شناسه نباشد.
ee
صفت مشتق صفتی است که مقادیرش در پایگاه داده ذخیره نباشند بلکه حاصل یک
پردازش روی فقره هایی از داده های ذخیره شده باشند. مثلا از یک محاسبه بدست آید.
اروس يك دانشجو را داريم. با فرض اينكه معدل كل يك دانشجو يكى
از ضفات او ه حساب آید می توان هر یار که نیازبهآن داشتیم از جمع کل نمرات او ز تقسیم
آن بر تعداد آنها معدل او را بدست آورد و لزومی ندارد که حتما در پایگاه داده عینا ذخیره
شود. (آیا همیشه لزومی نداردا؟؟)
درس پایگاه داد
صفحه 18:
۳
سس اي
Street-number >| C@partment-nunber >] سس
|e سس
دص | >> first-name
صفحه 19:
ارتباط
* ارتباط یا بستگی مفهومی است بسیار مهم در مدلسازی معنایی داده le بین انواع
موجودیتها. معمولا ارتباط (ارتباطی) برقرار است.
* تعریف نوع ارتباط
* نوع ارتباط عبارت است از اندركنش (تعامل) بين دو يا بيش از دو نوع موجوديت (و يا بين يك
نوع موجوديت و خودش) و ماهيتا نوعى بستكى بين انواع موجوديتهاست.
هر نوع ارتباط يك معناى مشخص دارد و با يك نام بيان مى شود. و نيز مى توان كفت كه نوع
Ls) عملى است كه بين انواع موجوديتها جارى بوده. هست و خواهد بود.
" براى مثال هر وقت که می گوییم شخصی یک شغل دارد یعنی با یک شغل در ارتباط است.
درس پایگاه داد
صفحه 20:
نوع ارتباط
* خصوصیات کلی
۴ هر ارتباط یک نام دارد: معمولا کلمه یا عبارتی فعلی و نه اسمی
* هر نوع ارتباط یک معنای مشخص دارد . این معنا با معنای هر نوع ارتباط دیگر متفاوت
است. واقع شدن و در اختیار داشتن
هر نوع ارتباط نمونه هایی دارد. يعنى جند مثال در دنياى واقعى
* وضع مشارکت در ارتباط
* مشاركت يك نوع موجودیت در یک نوع ارتباط ممکن است الزامی (کامل) یا غیرالزامی (ثا
کامل) باشد.
برای مثال هر سازمانی حتما یک مدیر دارد.و ما سأزمان بدون مدیر نداریم پس این رابطه
یک رایه الزامی است.
درس پایگاه داد
صفحه 21:
نوع ارتباط
* نوع ارتباط به مثابه نوع موجودیت
* چون نوع ارتباط خود نوعی موجودیت است. بنابراین می تواند صفت یا
Sl داشت ately آما محجولا فاقد ضفت شتابه ات
* مثلا می خواهیم بكوييم يك مدير در يك سازمان مدیریت می کند. در این
Je زمان شووع مسري :مني توانك صفت این ازتباط باشد.
* درجه نوع ارتباط
* تعداد شرکت کنندگان در یک نوع ارتباط را درجه آن ارتباط گوییم و اين
اسطلاحات را دازيم» بگانن, خزگانی
درس پایگاه داد
صفحه 22:
درجه نوع ارتباط
>
Ets BQ]
مسج
تاو :]
* (2) یک رابطه سه گانی (۲6۲۳3۲۷) را نشان می دهد.
* (0) و (6) سه رابطه دوگانی را نشان می دهند.
صفحه 23:
اخذ ۶ : اخذ درس ارائه شده توسط یک استاد خاص. توسط یک دانشجو
درس پایگاه داد
صفحه 24:
رابطه همانی و نقش در رابطه
صفحه 25:
نوع ارتباط
چندی و ماهیت نوع ارتباط
* چندی یک نوع ارتباط (که به آن کاردینالیتی ارتباط هم می گویند) مثلا بین دو
موجودیت عبارتست از چگونگی تناظر بین دو مجموعه نمونه های آن دو موجودیت. می
دانیم که سه گونه تناظر داریم:
* تاظر یک به یک ۱۰۱
* یک سازمان یک مدیز كل فاره واه مسیرل فقط ممیر کی یک اران است.
* تناظر یک به چند ۸:۱
* یک مادر چند فرزند رد و هر فرزند یک مادر داد
* تناظر چند به چند ۸ : لا
هررداتشجو چند درس من گذراند وهر.درس توسط چدد ذانعجو گذرانده می شود.
درس پایگاه داد
صفحه 26:
* (2) تناظر یک به یک ۱:۱
* (0) و () تناظر یک به چند ۸۷:۱
* (0) تناظر جند به جند ۱۱:۲
صفحه 27:
نوع مشارکت
Total *
ازلمی : 3۵۳00810۲۷ ۴
Partial *
=] Spe ew
TL SS امسا
صفحه 28:
موجودیت ضعیف
(Weak Entity)
* موجودیتی است که در محدوده مدلسازی ما به یک موجودیت دیگر وابسته بوده
و توسط آن موجودیت (0۷/6۲ 1۳9 106۳011۴۷) شناخته میشود.
* نوع مشارکت موجودیت ضعیف در رابطه الزامی میباشد
* چندی رابطه همواره یک به چند میباشد (در برخی حالات خاص میتواند یک
به کی باشد)
Partial Key *
oy Gas داد
صفحه 29:
صفت رابطه
(Descriptive Attribute)
صفحه 30:
3
" سلسله مرآتب کلاسهای موجودیت
صفحه 31:
صفحه 32:
صفحه 33:
درس پایگاه داد
صفحه 34:
صفحه 35:
صفحه 36:
4 موجودیت در مقابل صفت
* صفات جند مقدارى (موجوديت ضعيف)
* موجوديت در مقابل رابطه
* رابطه های صفت دار
* رابطه دوگانی در مقابل رابطه سه گانی (؟۲)
م هميشه نمی توان به جای یک رابطه سه گانی از دو يا سه رابطه دوگانی
استفاده كرد.
* تجميع در مقابل رابطه سه كانى
* موجودیت به جای رابطه سه گانی
درس پایگاه داد
صفحه 37:
مشخص کردن موجودیت ها
پایگاه داده داربم که اطلاعات دانشجو, استاد و درس در
آن ذخیره شود. هر دانشجو می تواند چند در را اخذ کند. هر استاد
می تواند چند درس در طول یک ترم ارائه نماید.*
صفحه 38:
VS
ل نمونه 20 برای گوشه ای از سیستم بانکداری
>
-
Pe
hee
Cot ic
صفحه 39:
Summary of Symbols Used in E-R Notatigny
Entity Set CAD Attribute
Multivalued
Weak Entity Set Attribute
Relationship Set. ‘©. A_2? Derived Attribute
Identifying Total
Relationship 2 Participation
Set for Weak of Entity Set
Entity Set in Relationship
Discriminating
Primary Key A> Attribute of
Weak Entity Set
صفحه 40:
Many to One
Relationship
Cardinality
Limits
ISA
(Specialization or
Generalization)
Disjoint
Generalization
Summary of Symbols (Cont.)
disjoint
Many to Many
Relationship
__,, One to One
Relationship
role-
name
R Role Indicator
Total
Generalization
صفحه 41:
Alternative E-R Notations
E
Entity set E with | Al
attributes Al, A2, A3
and primary key Al
Many to Many
Relationship
One to One
Relationship
Many to One *4» 1
Relationship 92 “4
صفحه 42:
account (account_number, access_date;
customer (customer_name)
depositor_|_f 24 May 2005
Johnson
Smith
3 June 2005
10 June 2005
28 May 2005
17 June 2005
24 June 2005
23 May 2005
Hayes
Turmer
Jones
Lindsay
درس پایگاه داد
صفحه 43:
Ena ste
نو
سحم)سویج مد
هو
ole
و
os
۳۳0۲ [ overtopping
Generation and cra)
iene ce لس overlapping
3
[Employee [ سس
pre, ۳۳ 3
لك كك sneralization) سر
3
ae هه