درک
بهتر مفهوم ارتباط در دروس پيشين به طور تدريجي آشنايي نسبتا كاملي با
اجزاي يك پايگاه داده آشنا شديم و محيط پنجره Database را به خوبي
شناختيم. حال نوبت آن رسيده است كه شروع به طراحي كنيم و با دستان قدرتمند
خود پايگاه داده زيبايي را خلق كنيم ولي قبل از اينكار بايد مفهوم
ارتباطات بين جداول را بهتر درك كنيم. در اين درس مفهوم ارتباط بين
جدولهاي يك پايگاه داده را بهتر درك خواهيم كرد و روشهاي مختلف ارتباط را
ياد خواهيم گرفت و بدين ترتيب براي ايجاد جداول پايگاه داده خود را آماده
تر خواهيم كرد.گاهي دقيقا نمي دانيم كه چه نوع داده هايي وارد جدول خواهند
شد پس براي رفع اين مشكل به تدريج با نظريه طراحي پايگاه داده آشنا مي
شويم. درك ارتباط بين جداول: قبلا گفته شد كه جداول از طريق فيلدهاي مشترك
به يكديگر مرتبط هستند. هرچند كه فيلدهاي مشترك مرتبط شده, سبب تكرار برخي
داده ها ميشوند.(در هرجدولي كه به ديگري مرتبط است خود فيلد مشترك دوباره
ظاهر مي شود), ولي خواهيد ديد كه وقتي قدام به ايجاد پايگاه داده مي كنيد,
فيلد مشترك كمك مي كند تا بسياري از داده هاي تكراري, كه در صورت نبود
فيلد مشترك ايجاد مي شود, از بين ببريد. ممكن است واژه شناسي پايگاه داده
ها گيج كننده باشد اما خوشبختانه ساده ترين زبان زبان ارتباطي است, كه
چگونگي ارتباط جداول به يكديگر را تعريف مي كند. در اين درس به سه روش
ارتباط خواهيم پرداخت: 1-ارتباط يكي به يك 2-ارتباط يك به چند  3-ارتباط چند به چند فيلدهاي كليدي منحصر به فرد ركوردها: قبل
از تشريح ارتباطات جداول, دقت داشته باشيد كه اغلب جداول پايگاه داده,
فيلدي به نام فيلد كليد دارند, كه به ساير فيلدهاي جدول تقدم دارد. هرچند
كه فيلد كليد لزوما مهمترين ارزش اطلاعاتي را ندارد, ولي دري هستند براي
ورود به جدول كه نياز اصلي ما در ارتباط شمرده مي شود.فيلد كليد, فيلدي از
جدول است كه بصورتي منحصر به فرد هر ركورد را تبيين مي كند.(يعني امكان
اينكه فيلد كليد در دو ركورد مانند هم باشند وجود ندارد.) توجه:
فيلد كليد اصلي جدول بايد مقداري منحصر به فرد داشته باشد. اكسس امكان
تعيين چندين فيلد كليد را مي دهد. اگر كليد از چندين فيلد تشكيل شده باشد,
يك يا چند تا از اين فيلدها ممكن است داده هاي تكراري داشته باشندولي وقتي
تركيب شوند, فيلد ادغامي بايد مقدار منحصر به فردي را ايجاد كند. توجه
بيشتر به اين مثال خالي از لطف نيست: جدول كارمندان معمولا شامل فيلدهايي
از قبيل نام كارمند, نشاني, تاريخ تولد, ميزان حقوق مي شود. بعلاوه هميشه
مانند كد ملي, يك شماره كارمندي دارند. كد ملي شما منحصر به فرد است يعني
تنها به يك نفر اختصاص دارد بنابراين اين شماره كارمندي فيلد كليدي خوبي
براي فايل كارمندان است.براي دسترسي به نام, نشاني يا حقوق هر كارمند,
صرفنظر از تعداد كارمندان جدول اكسس فقط به شماره كارمند احتياج دارد.هر
كارمند شماره منحصر بفردي دارد لذا هنگامي كه اكسس يكبار شماره كارمندي را
گرفت, مي تواند آنرا با ركوردي از جدول پيوند دهد, يكبار براي هر ركورد.
به اين ترتيب اكسس مي تواند به بقيه داده هاي ركورد در ساير فيلدها دسترسي
داشته باشد. توجه: اسامي فيلدها كليدهاي خوبي نيستند, چون افراد بسياري
نام يكسان دارندو يا بسياري از افراد اسامي را به شكلهاي گوناگون مي
نويسند. زماني كه يك شركت به مشتريان, كارمندان و اجناس خود عددي را تخصيص
مي دهد, احتمالا آن شركت پروژه هايش را كامپيوتري كرده است. اين اعداد مي
تواند كليد منحصر به فردي براي يافتن بقيه داده هاي مرتبط با آن باشند.
همچنين بايد به نكته توجه داشته باشيد كه فيلد كليد همواره فيلد ارتباط
دوجدول مرتبط نيست ولي براي اين كار بسيار مناسب است و غالبا براي همين
منظور به كار مي رود. دو يا چند فيلد نيز مي توانند يك كليد منحصر به فرد
را تشكيل دهند. اغلب به فيلد كليد, فيلد كليد اصلي گفته مي شود. اگر
بخواهيد كه دو يا چند فيلد همراه با يكديگر به عنوان كليدي منحصر به فرد
عمل كنند, بايد اكسس را واداريد تا فيلدهاي ادغام شده را به عنوان يك فيلد
منحصر به فرد در نظر گيرد. مثلا ممكن است بخواهيد كه دو فيلد نام خانوادگي
و كد پستي را يكديگر ادغام كنيد تا فيلد كليد نحصر به فردي ايجاد شود. حال
كه با مفهوم فيلد كليد براي ارتباط آشنا شديد به انواع ارتباط موجود در
اكسس مي پردازيم: ارتباطات يك به يك(One to One):
شايد
ارتباط يك به يك نادرترين ارتباط ممكن بين جداول باشد. هنگامي كه در دو
جدول تعداد ركوردها يكسان باشد و هر ركورد يك جدول به ركورد ديگري در جدول
ديگر مرتبط باشد, بك ارتباط يك به يك بوجود مي آيد. ارتباط يك به يك
نادرست است چون معمولا مي توانيد آن دو جدول را در يك جدول ادغام كنيد.
ارتباط يك به يك بين دو جدول نشان داده شده است. فيلد كد كالا كليد و فيلد
ارتباط را تشكيل مي دهد. نخستين ركورد در نخستين جدول به نخستين ركورد در
دومين جدول مرتبط شده است. خود شركت ماكروسافت توصيه مي كند كه از ارتباط
يك به يك اجتناب كنيد. زيرا بهتر آن است كه دو جدول را در يك جدول بزرگتر
ادغام كنيد, كه اين طريقه بسيار كارآتر است. در اكسس هر جدول مي تواند تا
256 فيلد داشته باشد ولي اگر وجود جدولي با بيش از 256 فيلد ضرورت داشته
باشد,فقط با ايجاد دو يا چند جدول و برقراري ارتباط يك به يك بين آنها,
قادر به برآوردن اين نياز خواهيد بود. كه براي اين منظور هم ماكروسافت
امكانات بسياري را فراهم آورده است از ان جمله امكان دسترسي سريع به
اطلاعات جدول دوم از طريق جدول اول بدون باز كردن آن جدول. ارتباط يك به چند(One to Many): ارتباط
يك به چند شايد متداولترين نوع ارتباط بين جداول باشد. اين ارتباط زماني
اتفاق مي افتد كه يك ركورد از جدول به يك يا چند ركورد از جدول ديگر مرتبط
باشد. به عنوان مثال در جدول موجودي براي هر كالايي كه فروخته مي شود, يك
ركورد وجود دارد. ولي در جدول سفارشات مشتريان ممكن است براي يك كالا,
سفارشات متعددي وجود داشته باشد. نمونه اي از ارتباط يك به چند جداول
مشاهده مي شود. ارتباط يك به چند صرف جويي زيادي در فضاي ديسك را سبب مي
شود. مثلا ارتباط يك به چندي كه به شما امكان مي دهد تا گزارشي تهيه كنيد
كه شامل مشتري همراه با شرح كالاي سفارشي باشد. ولي شرح در هر ركورد سفارش
نمي آيد. شرح هركالا در جايي مستقل,در ركوردي منحصر بفرد در فايل موجودي
قرار دارد. اكسس مي تواند در هنگام نياز, با استفاده از فيلد ارتباطي
مشترك از جدول سفارش در جدول موجودي جستجو كند و شرح كالا را از آنجا
بردارد. اكسس بدون فيلد كليد نمي تواند تعيين كند كه در برابر هر سفارش چه
شرحي را بايد قرار دهد. توجه داشته باشيد كه اكسس جدولهاي مرتبط را مي
شناسدو در موقع لزوم اطلاعات صحيح را از آنها استخراج مي كند. لذا بايد
هنگام ايجاد پايگاه داده اكسس اين ارتباطات را به اكسس بفهمانيد تا در
هنگام مشاهده و چاپ داده ها از جداول مرتبط اكسس تمام كارها را انجام دهد.
همچنين قابل ذكر است كه ارتباط چند به يك و يك به چند مشابه هستند, لذا هر
دو عبارت به يك معني به كار مي روند. ارتباطات چند به چند(Many to Many): اكسس
ارتباطات چند به چند را مستقيما پشتيباني نمي كند ولي مي توانيد آن را
شبيه سازي كنيد. ارتباط چند به چند هنگامي ايجاد مي شود كه ركوردهاي
متعددي از يك جدول به يك يا چند ركورد از جدول ديگر مرتبط باشند. براساس
تصاوير جداولي كه قبلا مشاهده كرده ايد, مي توان چنين تصور كرد كه
خريداران متعددي, محصولات متعددي را سفارش دهند. بنابراين بين خريداران و
محصولات يك ارتباط چند به چند وجود دارد. جدول خريداران و جدول موجودي
محصولات از طريق جدول سفارش به هم متصل مي شوند.بنابراين براي ارتباط چند
به چند بين خريداران و موجودي محصولات, جدول سفارشات بعنوان واسطه بين اين
دو جدول عمل مي كند.جدول خريداران ارتباطي يك به چند با جدول سفارشات دارد
و جدول محصولات نيز ارتباطي يك به چند با جدول سفارشات دارد.جدول سفارشات
بطور غير مستقيم بين خريداران و محصولات ارتباط چند به چند ايجاد مي كند.
گاهي اوقات, جدول مركزي يا واسطه در ارتباط چند به چند جدول اتصال خوانده
مي شود. فيلدهاي كليد اصلي هر دو جدولي كه قرار است به هم مرتبط شوند,
بايد در اين جدول وجود داشته باشد. درس ارتباطات هم در اين قسمت تمام شد و
اميدوارم ديگر جاي ابهامي در مورد انواع ارتباطات باقي نمانده باشد. طراحي
يک پايگاه داده هاي جديد در درس پيش در مورد ارتباطات جداول به طور مفصل
توضيحاتي داديم و انواع ارتباطات را شناختيم حال ديگر قادر به ايجاد
پايگاه داده دلخواه خود هستيم و اين كار را به تدريج از اين درس كه مقدمي
بر ايجاد پايگاه داده جديد است آغاز مي كنيم. در اين درس در مورد
جادوگرهاي اكسس (Wizards) صحبت خواهيم كرد. اين جادوگرها شما را در ايجاد
برنامه هاي كاربردي متداول پايگاه داده ها, از قبيل مديريت فهرست پستي يا
ورود سفارشات راهنمايي مي كنند.هرچند كه نيازهاي شما به كار خاص موردنظر
يا احتياجات شخصيتان مربوط است, اما بيشتر پايگاه داده ها به يكي از نمونه
هاي كلي پايگاه داده تعلق دارند. جادوهاي اكسس چهارچوب پايگاه داده برنامه
كاربردي را ايجاد مي كنند, در مرحله بعد شما مي توانيد آن را اصلاح كنيد
تا با نيازهاي خاص شما تطابق داشته باشد. اما به هرحال براي ايجاد پايگاه
داده مجبور به استفاده از جادوگر نيستيد. شايد جادوگرها به كنترل مورد نظر
شما به عنوان يك پايگاه داده امكانات لازم را فراهم نكنند. ايجاد پايگاه
داده هاي جديد با استفاده از جادوگر: براي ايجاد يك پايگاه داده با بهره
گيري از جادوگر(Wizard) بايد هنگام وارد شدن به اكسس از طريق پنجره اوليه
قسمت Access database wizards,pages an_d 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 an_d billing(زمان و صورتحساب): پايگاه داده اي براي نگهداري مشتريان, پروژه ها, كارتهاي زماني, كارمندان و پرداختها ايجاد مي كند. توجه
كنيد كه اگر جادوگري انتخاب كنيد در همان پنجره New در طرف راست زير قسمت
Preview شكلي هدف پايگاه داده را كه چندان واضح نيست نشان مي دهد يعني شما
مي توانيد با انتخاب پايگاه داده ابتدا از هدف ايجاد آن از طريق اين شكل
مطلع شويد و سپس برروي Ok كليك كنيد. جادوگر نه تنها جداول اصلي پايگاه
داده را ايجاد مي كند, بلكه همچنين فرمها, گزارشها و حتي ماكروها و برنامه
هاي اصلي را نيز در صورت لزوم ايجاد مي كند. استفاده از جادوگر براي ايجاد
پايگاه داده اصلي, تهيه پايگاه داده اصلي را بسيار ساده تر مي كند. بطور
خلاصه مراحل ايجاد يك پايگاه داده با استفاده از جادوگر را شرح مي دهم: 1-جادوگر مورد نظر خود را در پنجره New انتخاب كنيد و بر روي Ok كليك كنيد. 2-نامي براي ذخيره شدن پايگاه داده انتخاب كنيد يا نام پيش فرض را قبول كنيد و بر روي Create كليك كنيد. 3-پنجره
اي ظاهر مي شود كه پايگاه داده اي را كه مي خواهيد ايجاد كنيد به شما
معرفي مي كند و شكل كلي آن را اعلام مي كند. اگر اين همان پايگاه داده
مورد نظر شماست بر روي Next كليك كنيد.  4- در پنجره بعدي در مورد
جداول و ديگر اجزايي كه ايجاد خواهد شد به شما اطلاعاتي مي دهد شما مي
توانيد از ليست موجود جدولهاي مورد نظر خود را انتخاب يا حذف كنيد و سپس
بر روي Next كليك كنيد.  5-در پنجره بعدي ليستي ظاهر مي شود كه شما مي
توانيد شكل ظاهري پايگاه داده خود را از ليست انتخاب كنيد شكل مورد علاقه
خود را انتخاب كرده بر روي Next كليك كنيد.  6-در پنجره بعدي شكل كلي گزارشهاي شما را نشان مي دهد در اين قسمت هم با انتخاب شكل موردنظر خود روي Next كليك كنيد.  7-در اين قسمت عنوان پايگاه داده از شما سوال مي شود مي توانيد نام پيش فرض را انتخاب كرده و بر روي Next كليك كنيد.  8- حال ديگر كار جادوگر تمام شده است مي توانيد بر روي Finish كليك كنيد.  9-
بعدي مدتي كه اكسس تمامي جداولها و اجزا را ايجاد كرد مي توانيد با پايگاه
داده كار كنيد. توجه كنيد كه در هر مرحله اي كه منصرف شديد مي توانيد بر
روي Cancel كليك كنيد. 10-ذكر اين نكته نيز ضروري به نظر مي رسدبعضي
از سوالها كه در هنگام ايجاد پايگاه داده با استفاده از جادوگر از شما مي
شود شايد براي شما گنگ به نظر برسد ولي مطمئنا بعد از يادگيري كامل اين
سوالات را مي توانيد به راحتي جواب دهيد. پس حتما بايد با ايجاد يك پايگاه
داده خالي آشنا شويد. طراحي يك پايگاه داده جديد: اگر قصد داريد كه از
جادوگر استفاده نكنيد كه به نظر من كار معقولانه اي است بايد مراحل زير را
بپيماييد:  1-هنگام وارد شدن به اكسس از پنجره اوليه باز شده گزينه
Blank access database راانتخاب كنيد و اگر وارد محيط اكسس شده ايد مي
توانيد از منو File گزينه New را انتخاب كنيد و از پنجره New در سربرگ
General شكل database را انتخاب كرده و برروي Ok كليك كنيد. 2- حال
بايد محل ذخيره شده پايگاه داده را انتخاب كرده و نامي براي آن انتخاب
كنيد كه من مطمئن هستم با اينكار آشنايي لازم را داريد پس نامي براي
پايگاه داده خود انتخاب كرده و بر روي Create كليك كنيد.  3- حال اكسس
پايگاه داده را ايجاد كرده و صفحه خالي در برابر شما ظاهر شده است از اين
قسمت به بعد بايد آشنايي لازم را به كارهاي پيشرفته داشته باشيد. توجه
كنيد كه هنگامي اصول كار اكسس را رفته رفته بهتر ياد گرفتيد جادوگرها هم
بهتر درك خواهيد كرد. ميله ابزار پنجره Database:
اين ميله ابزار در حالات مختلف تغيير مي كند و امكانات ديگري را به شما مي
رساند. درس مربوط به طراحي پايگاه داده جديد نيز در اينجا تمام مي شود
اميدوارم حالا شما قادر به ايجاد پايگاه داده اي جديد با استفاده از
جادوگر شده باشيد. در درس بعدي يكي از مفاهيم پيشرفته و ضروري اكسس را ياد
خواهيد گرفت يعني با تعريف جدول و نحوه عملكرد آن به صورت پيشرفته آشنا مي
شويد. تعريف جدول حال كه با مفهوم ارتباطات آشنا شديم و در درس قبل كاربرد
ويزارد و همچنين ايجاد پايگاه داده خالي را شرح داديم نوبت آن رسيده است
كه به سراغ مهمترين و اصلي ترين جز در يك پايگاه داده برويم و آن جداول مي
باشند. در اين درس قصد داريم با آنها آشنايي لازم را كسب كنيم. در اين درس
نحوه تعريف جداول پايگاه داده را شرح خواهم داد. صرف نظر از اينكه ما براي
ايجاد پايگاه داده از جادوگر استفاده كرده يا پايگاه داده خالي ايجاد كرده
ايم آشنايي با نحوه ايجاد, جابجايي و تغيير جداول پايگاه داده امري ضروري
و اجتناب ناپذير است.همانگونه كه قبلا هم گفته شد داده هاي موجود در
پايگاه داده در جدولها جاي مي گيرند و تسلط بر جداول مهمترين مهارتي است
كه بايد بعنوان كاربر اكسس داشته باشيد. من در اين درس شرح خواهم داد كه
چگونه جدول جديدي درست كنيد. براي ايجاد جدول نخست بايد انرا نامگذاري
كنيد و سپس نوع داده هاي درون انرا تعريف كنيد. اين امور كه مربوط به
طراحي جدول است يكي از ساده ترين كارها در اكسس است و البته جالب پس اين
درس نكات قابل توجهي براي شما خواهد داشت. ايجاد جدول جديد: وقتي كه مي
خواهيد يك جدول جديد ايجاد كنيد, با كليك كردن بر روي شاخص Tables در
پنجره Database به صفحه جداول(Tables) مي رويد.(البته توجه كنيد كه اين
صفحه هنگامي كه پايگاه داده را باز يا ايجاد مي كنيد به صورت پيش فرض ظاهر
مي شود).حال براي ايجاد جدولي جديد بايد بر روي دكمه New در بالاي پنجره
Database كليك كنيد. هنگامي كه بر روي اين دكمه كليك مي كنيداكسس پنجره
محاوره اي كوچكي به نام New Table را نشان مي دهد.(كليد ميانبري كه شما مي
توانيد براي دسترسي به اين پنجره كوچك استفاده كنيد كليد Alt+N مي باشد كه
به سرعت شما را به اين پنجره مي برد). در اين پنجره بايد انتخاب كنيم كه
مي خواهيم ايجاد جدول را در چه محيطي ادامه دهيم كه به نظر من حالت نمايشي
Design بهترين حالت نمايشي براي ايجاد و كار با جدول است,براي ايجاد جدول
گزينه Design View را از پنجره محاوره اي New Table انتخاب كرده و بر روي
Ok كليك كنيد. براي آشنايي شما با ديگر گزينه هاي اين پنجره يعني New
Table آنها را در زير به طور خلاصه شرح مي دهم. Datasheet View: جدولي
كلي به شكل صفحه گسترده مي سازد كه مي توانيد داده هاي جديد را در آن
اضافه كنيد. اين جدول بسيار ساده بوده و براي ايجاد پايگاه داده پيشرفته
اصلا مناسب نيست.  Design View: امكان تعيين تمامي خصوصيات جدول جديد
مانند نام فيلد, نوع داده, و حتي ملاحظات امنيتي, را فراهم مي كند.اين
گزينه براي ايجاد هر گونه جدول مناسب است. Table Wizard: امكان
انتخاب از ميان فهرستي از جادوگرهاي از پيش نوشته شده را فراهم مي سازد كه
از اين جادوگرها براي ايجاد جداول خاص مانند فهرست پستي يا جدول موجودي
استفاده مي شود. من اين گزينه را براي ايجاد جدول به هيچ وجه پيشنهاد نمي
كنم.  Import Table: از يك فايل داده غير اكسس, جدولي ايجاد مي كند. Link
Table: از يك فايل داده اكسس يا غيراكسس, جدول ديگري مي سازد. اين جدول
اتصالي را نگه مي دارد كه اگر فايل داده خارجي تغيير كند جدول اكسس نيز
تغيير كند. به موضوع اصلي برمي گرديم يعني حالت نمايشي Design. اين
حالت نمايشي بيشترين ميزان كنترل را برروي جدولي كه قصد ايجاد آنرا داريد
فراهم مي سازد. هنگامي كه برحالت نمايشي Design تسلط پيدا كرديد, مي
توانيد هر جدولي را ايجاد و اصلاح كرده و يا مطابق ميلتان دستكاري كنيد, و
اين شامل جداولي كه با جادوگر ايجاد كرده اين نيز مي شود.بعد از انتخاب
حالت Design View از پنجره New Table جدول جديدي را خواهيد ديد كه اصول
كار ما از اينجا شكل مي گيرد. لازم به يادآوري است كه همانطور كه قبلا
گفتم براي رفتن از حالت نمايشي Design View به حالت نمايشي Datasheet View
مي توانيد از منو View يا ميله ابزار استفاده كنيد. در ميله ابزار اولين
انتخاب كه به شكل جدول كوچكي است براي اينكار طراحي شده است.در شكل 81 در
زير شما مي توانيد ميله ابزار را در بعد از باز شدن پنجره Design تغيير
كرده است ببينيد و با آن آشنا شويد و سعي كنيد آنرا به خاطر بسپاريد.ذكر
اين نكته قابل توجه است كه اكسس همواره ميله ابزار را تغيير مي دهد را
فرامين كارايي بهتري را ايجاد كنند. نخستين جدول خود را طراحي كنيد: در
ميله عنوان پنجره Design View, نام جدول همراه با كلمه Table كه معرف
پنجره است, نشان داده مي شود.اكسس به طور خودكار نخستين جدول را Table1 مي
نامد(يعني شما در ميله عنوان اين عبارت را مي بينيد Table1:Table)اما
هرگاه كه بخواهيد جدول را در فايل پايگاه داده ذخيره كنيد,امكان تغيير نام
وجود دارد. هر سطر در پنجره Design View يك فيلد را مشخص مي كنديعني در
اين پنجره ما مي توانيم نوع فيلدها و نام آنها را در سطرها تعريف كنيم و
كار اصلي اين پنجره به شمار مي رود.همانگونه كه ملاحظه مي شود, پنجره
Design View داراي ميله گردان عمودي در سمت راست است لذا در صورت تمايل تا
256 فيلد مي توانيد اضافه كنيد و با استفاده از ميله گردان قادر به حركت
بين فيلدها هستند. هنگامي كه فيلدي مي خواهيم اضافه كنيم بايد در سه ستون
پنجره Design View آن فيلد را به طور كامل تعريف مي كنيم.در زير وظيف هر
يك از ستونها كه در تعريف فيلدهاي جدول كاربرد دارند تشريح شده است: Field Name(نام فيلد) :
بايد به هر فيلدنامي تخصيص دهيد.طول نام آن تا 64 حرف مي تواند باشد.نام
فيلد بايد عنواني منحصر بفرد باشد.براي فيلدي كه ارقام حقوق را نگه مي
دارد,بهترين نام حقوق يا مبلغ حقوق است.نام فيلد مي تواند فضاي خالي و
ساير علايم خاص بجز نقطه,علامت تعجب,علامت تكيه صدا()يا براكت را شامل
شود.توجه داشته باشيد كه هنگام كار با جدول براي رجوع به فيلد از نام آن
استفاده مي شود.  Data Type(نوع داده): نوع
داده اي را كه در فيلد جاي مي گيرد را تعيين مي كند. اكسس داده هاي مختلفي
را دارا است.به عنوان مثال براي فيلد حقوق بايد داده اي از نوع ارز يا
انتخاب كرد.(در درس آتي در اين مورد به صورت مفصل توضيح خواهم داد).  Description(شرح):ئشرح
اختياري است و براي توضيح فيلد به كار مي رود.مي توانيد منشا و محتواي
فيلد را در آن تشرح كنيد.توجه داشته باشيد كه پر كردن يا نكردن اين قسمت
اصلا تاثيري در جدول نخواهد داشت توجه:ايجاد
شرح براي هر فيلد عاذت خوبي است.در هنگام توسعه بعدي برنامه,اين كار بسيار
سودمند خواهد بود.براي فيلدها اسامي معني دار انتخاب كنيدتا بعدا داده هاي
داخل فيلد از طريق نامش قابل شناسايي باشند. مثلا:تاريخ تولد,نام فيلد
خوبي براي تاريخ تولد كارمند است, حال آنكه نامي مانند فيلد3, محتواي فيلد
را مشخص نمي كند. مفهوم اولين و آخرين ستونهاي جدول پنجره Design view
يعني ستونهاي نام فيلد و شرح از نامشان مشخص است. نام فيلد شرح كوچكي از
فيلد است و براي رجوع به فيلد و محتواي آن مورد استفاده قرار مي
گيرد.مثلا: در يك گزارش دستمزد اگر قرار باشد مقادير حقوق كه در فيلد حقوق
ذخيره شده است چاپ شود به اين فيلد رجوع مي شود.فيلد شرح بعنوان مرجعي
براي مستندسازي محتواي فيلد به كار مي رود.اكسس از اين فيلد هيچ استفاده
اي نمي كند, ولي شما بايد از اين بخش براي شرح هر فيلد پايگاه داده
استفاده كنيد. اگر با ساير همكاران برروي يك پروژه پايگاه داده كار مي
كنيد,هريك از شما بايد هر فيلدي را كه به پايگاه داده اضافه مي كنيد را
مستند كنيد,تا ديگران از علت وجود فيلد كاملا آگاه باشند. توجه:فيلدها را
بيش از حد مستند نكنيد.براي نمونه,يك ستون خالي شرح بهتري از شرحي است كه
تاثيري نداشته باشد.مثلا نوشتن شرح فيلد سوم زائد بوده و در واقع
توضيحي نمي دهد.بعلاوه شرحي كه مشابه نام فيلد باشدنيز غيرضروري است.
هرفيلدي به شرح نياز ندارد.مثلا فيلدي با نام نرخ ماليات, در جدول دستمزد,
به فيلد شرح احتياجي ندارد. اگر نامي كه براي فيلد انتخاب مي كنيد بامعني
باشد اصلا به شرح نياز ندارد. ستون مياني در پنجره Design View نوع داده
را تعيين مي كند.براي اين فيلد,به اطلاعات بيشتري نياز داريد.داده هاي
اكسس به اشكال مختلفي ظاهر مي شوند.شكل داده هاي فيلد مشخص كننده كاري است
كه با فيلد و محتواي آن مي توانيد انجام دهيد. ستون Data Type و كليه
موارد مربوط به آن در درس بعدي توضيح داده خواهد شد. هرگاه فيلدي (يا
فيلدهايي)را اضافه كرديد كه مي خواهيد كليد اصلي باشد,بايد موقعي كه
نشانگر ماوس روي سطر موردنظر است دكمه Primary Key را از ميله ابزار فشار
دهيد(دكمه اي كه تصوير كليد روي آن است).يا مي توانيد با انتخاب سطر
موردنظر از منو Edit گزينه Primary Key را انتخاب كنيد. همچنين يك روش
ديگر براي مشخص كردن كليد اصلي كليك راست كردن برروي سطر مورد نظر و
انتخاب Primary Key از منو ظاهر شده است. پس از انتخاب فيلد كليد اصلي
اكسس در سمت چپ فيلد تصوير كليد را نشان مي دهد. توجه كنيد كه هر جدولي كه
ايجاد مي كنيد بايد حتما يك كليد اصلي داشته باشد در درسهاي پيش در مورد
كليد اصلي به طور مفصل صحبت كرديم. پس بايد به ياد داشته باشيم كه در
هنگام ايجاد جدول يك فيلد را به عنوان كليد اصلي انتخاب كنيم. توجه:براي
اينكه بيش از يك فيلد را در كليد اصلي قرار دهيد بايد كليد Ctrl را پايين
نگه داريد و همزمان سطرهايي را كه مي خواهيد به عنوان كليد اصلي باشند
انتخاب كنيد سپس از ميله ابزار Primary Key را كليك كنيد. اكسس در سمت چپ
كليه فيلدهايي كه جز كليد اصلي هستند تصوير كليد را قرار مي دهد. توجه:اگر
فيلد كليد اصلي را تعريف نكنيد در هنگام بستن يا ذخيره كردن جدول طراحي
شده اكسس از شما سوال مي كند كه آيا مي خواهيد چنين فيلدي داشته باشيد اگر
پاسخ Yes را بدهيد اكسس فيلدي از نوع Auto Number(بعدا توضيح داده خواهد
شد)به جدول اضافه كرده و آن را كليد اصلي قرار مي دهد. اگر مطمئن هستيد كه
هرگز به كليد اصلي نياز نداريد (معمولا به يك فيلد كليد اصلي نياز است) No
را انتخاي كنيد. درس تعريف جدول هم تمام شد حال شما مي توانيد جدول خود را
ايجاد كنيد ولي يك مشكل كوچك وجود دارد و آن هم نوع داده هاي موجود در
ستون Data Type مي باشد نوع داده ها خود بحث مفصلي است كه آنرا به درس
بعدي موكول مي كنيم.
|