100% Guaranteed Results


Exercises – به نام خدا Solved
$ 24.99
Category:

Description

5/5 – (1 vote)

دانشگاه تهران
پردیس دانشکدههای فنی دانشکده برق و کامپیوتر

آزمایشگاه پایگاهداده
دستور کار شماره ۱

طراحی یک دیتابیس رابطهای

مهرماه ۱۴۰۰
مجتبی بنائی
آنچه خواھیم آموخت
به عنوان گام اول در مسیر کار با پایگا ههای داده ،باید بتوانیم یک پایگاه داده رابط های مناسب برای یک سیستم واقعی طراحی کنی م.
با توجه به اینکه اصول اینکار را در درس پایگاه داده، آموختهاید، در اینجا وارد مباحث علمی نمیشویم و فقط مطالب مهم مورد نیاز را با هم مرور خواهیم کرد.
این دستور کار سه گام اصلی خواهد داشت که مهم ترین بخش آن، گام اول یا طراحی دیتابیس خواهد بود :
1. طراحی دیتابیس موردنیاز برای و بسایت جابینج ا . این طراحی مبتنی بر ER و استفاده از سایت آنلاین SqlDBM خواهد بود .
2. نصب پستگرس (ترجیحا نسخه ۱۴) و نرم افزار DBeaver (نسخه Community)
3. تولید بانک اطلاعاتی نهایی در پستگرس با گرفتن خروجی از SqlDBM و ایمپورت آنها (اجرای دستورات SQL تولید شده) در DBeaver

در ادامه، توضیحات هر گام از مراحل سه گانه فوق را با هم مرور میکنیم.

مواردی که با ستاره * مشخص شده اند باید در گزارش کار شما حتما ذکر شوند.

گام اول : طراحی دیتابیس یک وبسایت کاریابی
قصد داریم وب سایتی برای یک شرکت کاریابی طراحی کنیم. قرار است ایده اصلی کار را از وب سایت جابینجا بگیریم .البته میتوانید از سایر سایتهای کاریابی فارسی/انگلیسی هم استفاده کنید.

برای اینکه با روال کار و امکانات این سایت آشنا شوید، حتما یک اکانت در این سایت بسازید و بخش های مختلف آنرا به صورت عملی بررسی کنید.
سپس با شناسایی کاربران اصلی این سایت(ادمین سایت/ بازدید کننده/کارجو/کارفرما/ نمایندگان کارفرما-مثلا مدیر واحد فرانتاند، جداگانه آ گهی شغلی ارسال و یا آ گهیهای رسیده را مدیریت میکند-) جدولی طراحی کنید (*) شامل ستونهای زیر (البته برای بخش کارفرما از دانش خودتان و یا مستندات خود سایت برای کارفرمایان استفاده کنید) :
فیلده ا امکانا ت کارب ر ردی ف
نام، اولویت، مهلت انجام ،نوع پروژه ، قیمت، حداقل سابقه کار و … کارفرما میتواند آ گه یهای مختلف خود را مشاهده کرده، آ گهی جدید ثبت کند کارفرم ا
مشخصات فردی، مشخصات دانشگاهی، تجرب ههای کار ی کارج و می تواند ثبت نام کرده و رزومه خود را به روز رسانی کند.
کارج و
تاریخ درخواست ،توضیحات بایدثبت شود. کارجو میتواند آ گهیها را مشاهده، درخواست استخدام ارسال کند(تمام آ گهیهای مشاهده شده یک کارجو برای مقاصد تحلیلی باید ذخیره شو د حتی اگر درخواستی ارسال نکند) کارج و
کارفرما میتواند لیست کاربران (نمایندگان) خود را ویرایش کند. کارفرم ا
کارفرما میتواند صورت حساب خود را مشاهده و پرداختهای خود را به ازای هر آ گهی مشاهده کند . کارفرم ا
کارفرما میتواند به ازای هر آ گهی، یادداشتی برای مراجعات بعدی ذخیره کند . کارفرم ا
امکان تایید کارفرماها و بررسی آ گهیهای ریپورت شده و … ادمین(یا اپر ات ور)
مشاهده سوابق و وضعیت درخو استهای کار …. کارج و

این جدول باید حداقل ده ردیف داشته باشد (*) و بهتر است تعداد امکانات ذکر شده برای هر کاربر اصلی تقریبا برابر باشد. به ازای هر امکانی که در جدول میآورید، دادههایی که باید ذخیره شود را در ستون آخر ذکر کنید. این موضوع به شما در طراحی دیتابیس نهایی، کمک خواهد کرد.
بعد از آشنایی اولیه با وب سایت جابینجا و مشخص کردن ده قابلیت اصلی، با در نظر داشتن رهیافت نمودار ER، کاغذ و قلمی برداشته، مراحل زیر را برای طراحی دیتابیس مرتبط با این قابلیتها انجام دهید:
• ابتدا موجودیت های اصلی را بکشید (به شکل مستطیل) . موجودیت اصلی عبارتست از شیء یا مفهومی که به طور مستقل، دارای معناست و یک تصویر ذهنی مشخص را برای ما ایجاد میکند
• در مرحله بعد، ارتباطات بین موجودیتها را با کشیدن خطی بین آنها (ترجیحا رسم یک لوزی حاوی نام رابطه در مسیر خط ارتباطی ) تعیین کنید.
• نوع رابطه را از لحاظ چندگانگی (کاردینالیتی) مشخص کنید : چند به چند/ یک به چند / یک به یک.
• در گام بعدی، خصوصیات اصلی هر موجودیت را مشخص کنید. از ستون آخر جدول تهیه شده استفاده کنید. توجه داشته باشید که برخی روابط هم میتوانند حاوی خصوصیت باشند. مثلا اگر رابطه بین کارفرما و درخواست کار را درخواستکار در نظر بگیریم، تاریخ و زمان این درخواست، خصوصیتی است که باید در خود رابطه ذخیره شود.
• خصوصیات چند مقداره (مانند تلفن یا ایمیل یا مدرک تحصیلی یا سابقه کاری ) را مشخص کنید که به ازای هر یک از آنها، قرار است چندین مقدار ذخیره شود.
از این طراحی با گوشی عکس گرفته و یا اسکن کنید و در گزارش بیاورید (*) (ابزارهای آنلاینی برای رسم این نمودارها وجود دارد حتی ابزار معروفMySQL Workbench را هم میتوانید در این قسمت استفاده کنید اما نسخه دستنویس این بخش نمره بیشتری از نسخه دیجیتال خواهد شد چون به عنوان یک مهندس، قلم و کاغذ هم باید یکی از ابزارهای دم دستی شما باشد) سپس، یک حساب کاربری در سایت SqlDBM بسازید و یک پروژه جدید از نوع پستگرس در آن ایجاد کنید:

با ورود به محیط کار، حتما دیاگرام نمونهای که به عنوان مثال در سمت چپ و در قسمت نمودارها مشاهده میکنید را با دقت بررسی کنید.
سپس با در نظر گرفتن قوانین ساده زیر، نمودار فوق را درون این پروژه به عنوان یک دیاگرام جدید رسم کنید (*) :
• هر موجودیت ، یک جدول خ واهد بود.
• هر رابطه چند به چند، نیاز به یک جدول واسط خواهد داشت حاوی کلید اصلی دو طرف + خصوصیات خود رابطه .
• هر رابطه یک به چند یا یک به یک نیاز به جدول جداگانه ندارد و خصوصیات آن رابطه (در صورت وجود) به جدول طرف چند میتواند منتقل شود. (مگر اینکه خود خصوصیات آن رابطه چند مقداره باشند)
• هر خصوصیت چند مقداره به یک جدول جداگانه نیاز خواهد داشت. (هر چند در دیتابیسهای جدید، فیلدی از نوع جیسان هم میتوانیم داشته باشیم برای دادههای سادهای مانند تلفن یا ایمیل و حتی مقاطع تحصیلی یک فریلنسر، میتوانیم همه آنها در همان جدول اصلی و در قالب یک جیسان ذخیره کنیم )
• با رسم جداول فوق که کافی است با کلیک بر روی نماد جدول در نوار فوقانی، آنها را داخل دیاگرام بکشید، خصوصیات هر رابطه را مشخص کنید. کلید هر رابطه را برای جداولی که تعداد رکوردهای زیادی را خواهند داشت مانند درخواست کار، از نوع uuid تعیین کنید.
• سپس روابط بین هر دو جدول را را با اتصال جداول به همدیگر، نمایش دهید. بهتر است از گزینه دوم در این راهنما برای این منظور استفاده کنید .

• برای ذخیره تصاویر و فایلها ،کافی است آدرس مکان ذخیره آنها را نگهداری کنید.

نکته : در SqlDBM تنها یک پروژه را به رایگان میتوانید تعریف کنید اما درون آن پروژه، هر تعداد دیاگرام میتوانید ایجاد کنید!
عکس این نمودار را با توضیحی کلی آن (*) در یک پاراگراف در گزارش ذکر کنید( مثلا این نمودار حاوی پنج جدول اصلی و هفت جدول واسطه است که برای بخش درخواست کار و ارتباط بین کارجو و کارفرما طراحی شده است و…. )
به عنوان آخرین کار در این مرحله، از منوی سمت چپ، گزینه Forward Engineer را بزنید تا بتوانید خروجی SQLاز جداول خود ایجاد کنید. متاسفانه در نسخه رایگان، در هر بار استفاده از این گزینه، تنها یک جدول را میتوانید انتخاب کنید. بنابراین هر جدول را جداگانه انتخاب کنید و خروجی تولید شده را در یک فایل متنی کپی کنید تا فایل نهای ی (فایلی با پسوند sql که ضمیمه گزارش کار خواهد بود)* ایجاد شود .
دقت کنید که چون دستورات ساخت جداول به ترتیب اجرا می شوند، ترتیب کپی و ساختار فایل نهایی هم مهم است. بنابراین ابتدا باید دستورات ساخت جد اول اصلی که ارتباط خاصی با بقیه جداول ندارند، تولید شوند و سپس دستورات ساخت جداول واسط که به دلیل وجود کلیدهای خارجی و ارجاع به جداول اصلی ، باید بعد از ایجاد آنها ساخته شوند. ( البته میتوانید دستورات ساخت ایندکس و کلید خارجی و … را که ارتباط بین جداول را نشان میدهد به بخش انتهایی فایل و بعد از ساخت جداول منتقل کنید که ترتیب جداول هم خیلی مهم نباشد )

گام دوم و سوم: نصب نرم افزارھای مورد نیاز / ایمپورت جداول
1. نسخه ۱۴ پستگرس را دانلود و نصب کنید.(یوزر و پسورد اولیه را به خاطر بسپرید)
2. نسخه community نرم افزار dbeaver را هم دانلود و نصب کنید(. از طریق این نرم افزار، می خواهیم با پستگرس کار کنیم).
3. (Start -> Run -> services.msc) . مطمئن شوید که پستگرس در حال اجراست
4. dbeaver را باز کرده، به پستگرس متصل شوید.

5. یک دیتابیس با نام Jobinja در پستگرس ایجاد کنید. روی آن کلیک راست کرده و گزینه Set as default را بزنید تا با باز کردن هر پنجرهSQL به صورت پیشفرض، این دیتابیس، در حالت انتخاب قرار داشته باشد .
6. از منوی بالا،SQL Editor را انتخاب کنید. دقت کنید که بعد از باز شدن این پنجره، در نوار بالای صفحه، حتما نام شِما
(شِما یا گروه پیش فرض در پستگرس، public است و جداول به صورت پیش فرض در این گروه ساخته میشوند) و نام دیتابیس را چک کنید که اشتباها دستورات شما در دیتابیس دیگری اجرا نشود. باید منطقا public@newcoders را مشاهده کنید اگر public@postgres را میبینید، آنرا از همین نوار بالا، تغییر دهید. مشکلی که به کرات در تر مهای گذشته برای بسیاری از دانشجویان پیش آمد، ساخته شدن جداول درون دیتابیس postgres که دیتابیس اصلی پستگرس و حاوی اطلاعات مورد نیاز برای کار با آن است،بود .
7. حال دستورات قبلی را در اینجا کپی و آنها را اجرا کنید. اگر خطای خاصی نداشته باشید، باید جداول را درون شِمای پابلیک از نوار ابزار سمت چپ، مشاهده کنید.
8. حال برای اطمینان از صحت کار، از نوار ابزار Project-General در سمت چپ نرم افزار،با کلیک راست بر روی ER Digrams، یک نمودار جدید حاوی تمام جداولی که ساخته اید ایجاد کنید. این دیاگرام ، شبیه دیاگرامی خواهد بود که در گام اول رسم کرده اید (*) .
خروجی و نحوه تحویل کار
گزارشی مختصر اما کامل از مراحل کار (مواردی که با * مشخص شده)ایجاد کنید و هر جا نیاز به توضیح دارد، آنرا بیان کنید.
گزارش را در قالب مشخص شده ارسال نمایید .فایل قالب گزارش در سایت ایلرن بارگذاری شده است.

نکته : قرار است این سایت کاریابی را شما طراحی کنید. بنابراین بسته به نیاز، جداولی به طراحی خود اضافه یا کم کنید. هر جا تردیدی در مدلسازی داشتید، آنها را در تلگرام (گروه درس یا پیام به استاد) و یا تالار گفتگوی درس، میتوانید بپرسید .
برای اینکه طراحی های مختلف دیتابیس ها را مشاهده کرده و ایده بگیرید ، لینک زیر میتواند کمک بزرگی در این مسیر برای شما باشد:
https://www.vertabelo.com/blog/example_models/

Reviews

There are no reviews yet.

Be the first to review “Exercises – به نام خدا Solved”

Your email address will not be published. Required fields are marked *

Related products