Peducate.ir

Peducate.ir

با هم بیاموزیم
Peducate.ir

Peducate.ir

با هم بیاموزیم

آموزش اکسس بخش پنجم

آموزش اکسس بخش پنجم


در این بخش مفهوم ارتباط بین جدولهای یک پایگاه داده را بهتر درک خواهیم کرد و روشهای مختلف ارتباط را یاد خواهیم گرفت و بدین ترتیب برای ایجاد جداول پایگاه داده خود را آماده تر خواهیم کرد. گاهی دقیقا نمی دانیم که چه نوع داده هایی وارد جدول خواهند شد پس برای رفع این مشکل به تدریج با نظریه طراحی پایگاه داده آشنا می شویم.   

درک ارتباط بین جداول

قبلا گفته شد که جداول از طریق فیلدهای مشترک به یکدیگر مرتبط هستند. هرچند که فیلدهای مشترک مرتبط شده، سبب تکرار برخی داده ها میشوند. (در هرجدولی که به دیگری مرتبط است خود فیلد مشترک دوباره ظاهر می شود)، اما خواهید دید که وقتی قدام به ایجاد پایگاه داده می کنید، فیلد مشترک کمک می کند تا بسیاری از داده های تکراری، که در صورت نبود فیلد مشترک ایجاد می شود، از بین ببرید. ممکن است واژه شناسی پایگاه داده ها گیج کننده باشد اما خوشبختانه ساده ترین زبان زبان ارتباطی است، که چگونگی ارتباط جداول به یکدیگر را تعریف می کند.


در این بخش به سه روش ارتباط خواهیم پرداخت:

ارتباط یکی به یک

ارتباط یک به چند

ارتباط چند به چند

فیلدهای کلیدی منحصر به فرد رکوردها: قبل از تشریح ارتباطات جداول، دقت داشته باشید که اغلب جداول پایگاه داده، فیلدی به نام فیلد کلید دارند، که به سایر فیلدهای جدول تقدم دارد. هرچند که فیلد کلید لزوما مهمترین ارزش اطلاعاتی را ندارد، اما دری هستند برای ورود به جدول که نیاز اصلی ما در ارتباط شمرده می شود. فیلد کلید، فیلدی از جدول است که بصورتی منحصر به فرد هر رکورد را تبیین می کند. (یعنی امکان اینکه فیلد کلید در دو رکورد مثل هم باشند وجود ندارد).


توجه: فیلد کلید اصلی جدول باید مقداری منحصر به فرد داشته باشد. اکسس امکان تعیین چندین فیلد کلید را می دهد. اگر کلید از چندین فیلد تشکیل شده باشد، یک یا چند تا از این فیلدها ممکن است داده های تکراری داشته باشندولی وقتی ترکیب شوند، فیلد ادغامی باید مقدار منحصر به فردی را ایجاد کند. توجه بیشتر به این مثال خالی از لطف نیست: جدول کارمندان معمولا شامل فیلدهایی از قبیل نام کارمند، نشانی، تاریخ تولد، میزان حقوق می شود.


بعلاوه همیشه مثل کد ملی، یک شماره کارمندی دارند. کد ملی شما منحصر به فرد است یعنی تنها به یک نفر اختصاص دارد بنابراین این شماره کارمندی فیلد کلیدی خوبی برای فایل کارمندان است. برای دسترسی به نام، نشانی یا حقوق هر کارمند، صرفنظر از تعداد کارمندان جدول اکسس فقط به شماره کارمند احتیاج دارد. هر کارمند شماره منحصر بفردی دارد لذا هنگامی که اکسس یکبار شماره کارمندی را گرفت، می تواند آنرا با رکوردی از جدول پیوند دهد، یکبار برای هر رکورد. به این ترتیب اکسس می تواند به بقیه داده های رکورد در سایر فیلدها دسترسی داشته باشد.


توجه: اسامی فیلدها کلیدهای خوبی نیستند، چون افراد بسیاری نام یکسان دارندو یا بسیاری از افراد اسامی را به شکلهای گوناگون می نویسند. زمانی که یک شرکت به مشتریان، کارمندان و اجناس خود عددی را تخصیص می دهد، احتمالا آن شرکت پروژه هایش را کامپیوتری کرده است. این اعداد می تواند کلید منحصر به فردی برای یافتن بقیه داده های مرتبط با آن باشند. همچنین باید به نکته توجه داشته باشید که فیلد کلید همواره فیلد ارتباط دوجدول مرتبط نیست اما برای این کار بسیار مناسب است و غالبا برای همین منظور به کار می رود.


دو یا چند فیلد نیز می توانند یک کلید منحصر به فرد را تشکیل دهند. اغلب به فیلد کلید، فیلد کلید اصلی گفته می شود. اگر بخواهید که دو یا چند فیلد همراه با یکدیگر به عنوان کلیدی منحصر به فرد عمل کنند، باید اکسس را وادارید تا فیلدهای ادغام شده را به عنوان یک فیلد منحصر به فرد در نظر گیرد. مثلا ممکن است بخواهید که دو فیلد نام خانوادگی و کد پستی را یکدیگر ادغام کنید تا فیلد کلید نحصر به فردی ایجاد شود. حال که با مفهوم فیلد کلید برای ارتباط آشنا شدید به انواع ارتباط موجود در اکسس می پردازیم:


ارتباطات یک به یک(One to One): شاید ارتباط یک به یک نادرترین ارتباط ممکن بین جداول باشد. هنگامی که در دو جدول تعداد رکوردها یکسان باشد و هر رکورد یک جدول به رکورد دیگری در جدول دیگر مرتبط باشد، بک ارتباط یک به یک بوجود می آید. ارتباط یک به یک نابخشت است چون معمولا می توانید آن دو جدول را در یک جدول ادغام کنید.


در اکسس هر جدول می تواند تا 256 فیلد داشته باشد اما اگر وجود جدولی با بیش از 256 فیلد ضرورت داشته باشد، فقط با ایجاد دو یا چند جدول و برقراری ارتباط یک به یک بین آنها، قادر به برآوردن این نیاز خواهید بود. که برای این منظور هم ماکروسافت امکانات بسیاری را فراهم آورده است از ان جمله امکان دسترسی سریع به اطلاعات جدول دوم از طریق جدول اول بدون باز کردن آن جدول.


ارتباط یک به چند(One to Many): ارتباط یک به چند شاید متداولترین نوع ارتباط بین جداول باشد. این ارتباط زمانی اتفاق می افتد که یک رکورد از جدول به یک یا چند رکورد از جدول دیگر مرتبط باشد. به عنوان مثال در جدول موجودی برای هر کالایی که فروخته می شود، یک رکورد وجود دارد. اما در جدول سفارشات مشتریان ممکن است برای یک کالا، سفارشات متعددی وجود داشته باشد.


اما توضیح در هر رکورد سفارش نمی آید. توضیح هرکالا در جایی مستقل، در رکوردی منحصر بفرد در فایل موجودی قرار دارد. اکسس می تواند در هنگام نیاز، با استفاده از فیلد ارتباطی مشترک از جدول سفارش در جدول موجودی جستجو کند و توضیح کالا را از آنجا بردارد. اکسس بدون فیلد کلید نمی تواند تعیین کند که در برابر هر سفارش چه توضیحی را باید قرار دهد. توجه داشته باشید که اکسس جدولهای مرتبط را می شناسدو در موقع لزوم اطلاعات صحیح را از آنها استخراج می کند. لذا باید هنگام ایجاد پایگاه داده اکسس این ارتباطات را به اکسس بفهمانید تا در هنگام مشاهده و چاپ داده ها از جداول مرتبط اکسس تمام کارها را انجام دهد. همچنین قابل ذکر است که ارتباط چند به یک و یک به چند مشابه هستند، لذا هر دو عبارت به یک معنی به کار می روند.


ارتباطات چند به چند(Many to Many): اکسس ارتباطات چند به چند را مستقیما پشتیبانی نمی کند اما می توانید آن را شبیه سازی کنید. ارتباط چند به چند هنگامی ایجاد می شود که رکوردهای متعددی از یک جدول به یک یا چند رکورد از جدول دیگر مرتبط باشند.


براساس تصاویر جداولی که قبلا مشاهده کرده اید، می توان چنین تصور کرد که خریداران متعددی، محصولات متعددی را سفارش دهند. بنابراین بین خریداران و محصولات یک ارتباط چند به چند وجود دارد. جدول خریداران و جدول موجودی محصولات از طریق جدول سفارش به هم متصل می شوند. بنابراین برای ارتباط چند به چند بین خریداران و موجودی محصولات، جدول سفارشات بعنوان واسطه بین این دو جدول عمل می کند. جدول خریداران ارتباطی یک به چند با جدول سفارشات دارد و جدول محصولات نیز ارتباطی یک به چند با جدول سفارشات دارد.


گاهی اوقات، جدول مرکزی یا واسطه در ارتباط چند به چند جدول اتصال خوانده می شود. فیلدهای کلید اصلی هر دو جدولی که قرار است به هم مرتبط شوند، باید در این جدول وجود داشته باشد. بخش ارتباطات هم در این بخش تمام شد و امیدوارم دیگر جای ابهامی در مورد انواع ارتباطات باقی نمانده باشد. طراحی یک پایگاه داده های تازه در بخش پیش در مورد ارتباطات جداول به طور مفصل توضیحاتی دادیم و انواع ارتباطات را شناختیم حال دیگر قادر به ایجاد پایگاه داده دلخواه خود هستیم و این کار را به تدریج از این بخش که مقدمی بر ایجاد پایگاه داده تازه است آغاز می کنیم. در این بخش در مورد جادوگرهای اکسس (Wizards) صحبت خواهیم کرد.


این جادوگرها شما را در ایجاد برنامه های کاربردی متداول پایگاه داده ها، از قبیل مدیریت فهرست پستی یا ورود سفارشات راهنمایی می کنند. هرچند که نیازهای شما به کار خاص موردنظر یا احتیاجات شخصیتان مربوط است، اما بیشتر پایگاه داده ها به یکی از نمونه های کلی پایگاه داده تعلق دارند. جادوهای اکسس چهارچوب پایگاه داده برنامه کاربردی را ایجاد می کنند، در مرحله بعد شما می توانید آن را اصلاح کنید تا با نیازهای خاص شما تطابق داشته باشد. اما به هرحال برای ایجاد پایگاه داده مجبور به استفاده از جادوگر نیستید. شاید جادوگرها به کنترل مورد نظر شما به عنوان یک پایگاه داده امکانات لازم را فراهم نکنند. ایجاد پایگاه داده های تازه با استفاده از جادوگر: برای ایجاد یک پایگاه داده با بهره گیری از جادوگر(Wizard) باید هنگام وارد شدن به اکسس از طریق پنجره اولیه بخش Access database wizards، pages and projects را انتخاب کنید و یا اگر وارد محیط اکسس شده اید از منو File گزینه New را انتخاب کنید، تا پنجره محاوره ای New که دارای دو سربرگ است ظاهر شود. هنگامی که سربرگ General (عمومی) را انتخاب می کنید، صفحه General ظاهر می شود که با آن می توانید یک پایگاه داده خالی ایجاد کنید. در دروس بعدی نحوه ایجاد یک پایگاه داده خالی را توضیح خواهم داد. اصولا زمانی پایگاه داده خالی لیجاد می کنیم که بخواهیم تمامی جنبه های اولیه طراحی و ایجاد پایگاه داده را کنترل کنیم. زمانی که یک پایگاه داده تازه و خالی ایجاد می کنیم اکسس کاری برای شما انجام نمی دهد و هیچ پیش فرضی راجع به پایگاه داده ای که می خواهید ایجاد کنید، ندارد.


اما به جای ایجاد یک پایگاه داده خالی می توانید بر روی سربرگ Databases کلیک کنید تا صفحه Databases در پنجره محاوره ای New، نمایان شود. توجه داشته باشید که جادوگر راهنمای گام به گام اکسس است که در انجام کارهایی از قبیل ایجاد پایگاه داده تازه به شما کمک می کند. اگر اکسس جادوگری داشته باشد که امکان ایجاد پایگاه داده ای مشابه آنچه لازم دارید را فراهم سازد راحتتر آن است که بجای این که از ابتدا پایگاه داده ایجاد کنید، جادوگر را به کار اندازید. در زیر هر یک از پایگاه داده هایی که توسط جادوگر می توان ایجاد کرد تشریح شده است، برای اجرای آن کافی است که نماد مربوطه را انتخاب کنید و بر روی کلید Ok کلیک کنید. حال به جادوگرهای موجود و کاری که برای شما در اکسس انجام می دهند توجه کنید:


Asset tracking (پیگیری اموال):

پایگاه داده ای برای مدیریت، نگهداری اموال، فروشندگان و کارمندان شرکت ایجاد می کند.  Contact Managment (مدیریت ملاقاتها): پایگاه داده ای برای قرارهای ملاقات و تماسهای تلفنی شخصی شما ایجاد می کند. Event Managment (مدیریت وقایع): یک پایگاه داده برای وقایعی مثل قراردادها (موافقت نامه ها)، کارمندان و قیمتها ایجاد می کند. Expenses (مخارج و هزینه ها): یک پایگاه داده برای نگهداری گزارشهای مخارج ایجاد می کند. Inventory  Control (کنترل موجودی): پایگاه داده ای برای اطلاعات محصولات، خریداران و سفارشات ایجاد می کند.


 Ledger (حساب کل): پایگاه داده ای برای حسابهای کل، شامل تبادلات و حسابها ایجاد می کند.

Order Entry (دریافت سفارش): پایگاه داده ای برای مدیریت سفارشات خریداران، پرداختها و محصولات ایجاد می کند. در این پایگاه داده سیستمی از جداول ایجاد میشود که تاحدودی به جداولی که در قبلا در بخشهای پیش توضیح دادیم تطابق دارد.


Resource scheduling (زمانبندی منابع): پایگاه داده ای برای مدیریت منابعی از قبیل زمانبندی و اقلام خریداران ایجاد می کند.


Service Call Managment (مدیریت سرویس تلفن): پایگاه داده ای برای نگهداری اطلاعات خریداران، کار، دستورات کار، قطعات و پرداختها ایجاد می کند.


Time and billing (زمان و صورتحساب): پایگاه داده ای برای نگهداری مشتریان، پروژه ها، کارتهای زمانی، کارمندان و پرداختها ایجاد می کند.


توجه کنید که اگر جادوگری انتخاب کنید در همان پنجره New در طرف راست زیر بخش Preview شکلی هدف پایگاه داده را که چندان واضح نیست نشان می دهد یعنی شما می توانید با انتخاب پایگاه داده ابتدا از هدف ایجاد آن از طریق این شکل مطلع شوید و سپس برروی Ok کلیک کنید. جادوگر نه تنها جداول اصلی پایگاه داده را ایجاد می کند، بلکه همچنین فرمها، گزارشها و حتی ماکروها و برنامه های اصلی را نیز در صورت لزوم ایجاد می کند. استفاده از جادوگر برای ایجاد پایگاه داده اصلی، تهیه پایگاه داده اصلی را بسیار ساده تر می کند.


بطور خلاصه مراحل ایجاد یک پایگاه داده با استفاده از جادوگر را توضیح می دهم:

جادوگر مورد نظر خود را در پنجره New انتخاب کنید و بر روی Ok کلیک کنید.

نامی برای ذخیره شدن پایگاه داده انتخاب کنید یا نام پیش فرض را قبول کنید و بر روی Create کلیک کنید.

پنجره ای ظاهر می شود که پایگاه داده ای را که می خواهید ایجاد کنید به شما معرفی می کند و شکل کلی آن را اعلام می کند. اگر این همان پایگاه داده مورد نظر شماست بر روی Next کلیک کنید.

در پنجره بعدی در مورد جداول و دیگر اجزایی که ایجاد خواهد شد به شما اطلاعاتی می دهد شما می توانید از لیست موجود جدولهای مورد نظر خود را انتخاب یا حذف کنید و سپس بر روی Next کلیک کنید.

در پنجره بعدی لیستی ظاهر می شود که شما می توانید شکل ظاهری پایگاه داده خود را از لیست انتخاب کنید شکل مورد علاقه خود را انتخاب کرده بر روی Next کلیک کنید.

در پنجره بعدی شکل کلی گزارشهای شما را نشان می دهد در این بخش هم با انتخاب شکل موردنظر خود روی Next کلیک کنید.

در این بخش عنوان پایگاه داده از شما سوال می شود می توانید نام پیش فرض را انتخاب کرده و بر روی Next کلیک کنید.

حال دیگر کار جادوگر تمام شده است می توانید بر روی Finish کلیک کنید.

بعدی مدتی که اکسس تمامی جداولها و اجزا را ایجاد کرد می توانید با پایگاه داده کار کنید. توجه کنید که در هر مرحله ای که منصرف شدید می توانید بر روی Cancel کلیک کنید.


ذکر این نکته نیز ضروری به نظر می رسدبعضی از سوالها که در هنگام ایجاد پایگاه داده با استفاده از جادوگر از شما می شود شاید برای شما گنگ به نظر برسد اما مطمئنا بعد از یادگیری کامل این سوالات را می توانید به راحتی جواب دهید. پس حتما باید با ایجاد یک پایگاه داده خالی آشنا شوید.

نظرات 0 + ارسال نظر
ایمیل شما بعد از ثبت نمایش داده نخواهد شد