بسم الله الرحمن الرحيم

سيستم آموزش الکترونيکي

پايگاه داده ها

Build by MHDsoft LMS.1387.2008.1
By: M.H.Dalvand
Http://Www.MHDsoft.Com

Access methods را توضيح دهيد

1/132 

نرم افزارهايي که واسط بين کاربر و کامپيوتر بوده اند و مديريت ذخيره و بازيابي اطلاعات را نيز بر عهده داشته اند را مي گويند. قبل از دهه ي 1970 اين نوع از نرم افزارها وجود داشته اند.

جواب


انقلاب بانک اطلاعاتي در دهه ي 1970 چه است ؟

2/132 

بخاطر وجود مشکلاتي که Access methods داشتند، از قبيل نفوذ پذيري و عدم امکان اشتراک داده ها، با روي کار آمدن نظام مديريت اطلاعات و يا DBMS در دهه ي 1970 آن مشکلات بر طرف شد. يکي از ويژگيهاي DBMS اين است که مانند حصاري دور تا دور اطلاعات مي باشد که دستيابي به اطلاعات مي بايستي از طريق آن صورت پذيرد.

جواب


دو نوع نيروي انساني که براي کار با DBMS نياز است را نام ببريد؟

3/132 

1. مدير بانک اطلاعاتي که اصطلاحا" DBA و يا Data Base Administrator است

2.برنامه ساز بانک اطلاعاتي که اصطلاحا" DBP و يا Data Base programmer است

جواب


تنها کساني که مي توانند دور از چشم نظام مديريت بانک اطلاعات ( DBMS ) به داده ها دسترسي داشته باشند چه کساني هستند ؟ و از چه طريق يا با چه وسيله اي ؟

4/132 

1.مدير ( DBA )

2.برنامه ساز ( DBP )

که هر دو با استفاده از نرم افزارهاي کمکي اين دسترسي را دارند.

جواب


در سال 1972 در همان دهه ي انقلاب بانک اطلاعاتي معماري چهار لايه اي استانداردي براي بانک اطلاعاتي توسط ANSI پيشنهاد شد، چهار لايه ي آنرا را نام ببريد؟

5/132 

1.تصوير خارجي

2.تصوير ادارکي عام

3.تصوير ادراکي خاص

4.تصوير فيزيکي

جواب


قانون پنهان سازي اطلاعات در DBMS چه است ؟

6/132 

به هر شخص به همان اندازه اطلاعات بده که به آن نياز دارد و نه بيشتر

جواب


تصوير ادارکي عام در چه مرحله اي از طراحي DBMS ايجاد مي شود و نتيجه ي آن چه است ؟

7/132 

تصوير ادارکي عام فقط در مرحله ي طراحي بانک اطلاعاتي مطرح مي شود، پس از طراحي نهايي و کامل بانک و انتخاب يک مدل براي پياده سازي آن، اين لايه به تصوير ادراکي خاص تبديل مي شود.

جواب


کاربران بانکهاي اطلاعاتي چه تصويري از آنرا مي شناسند ؟ ( به مي شناسند توجه شود)

8/132 

از آنجا که اکثر افرادي که با بانک اطلاعاتي سر و کار دارند کابران آن هستند، و با طراحي آن سر و کار ندارند، يک تصوير ادراکي بيشتر نمي شناسند که همان تصوير ادراکي خاص است.

جواب


معروف ترين مدلهاي تصوير ادراکي عام را نام ببريد ؟

9/132 

1.EER

2.NIAM

جواب


موفق ترين مدلهاي بانک اطلاعاتي که در پياده سازي مورد استفاده قرار گرفته اند کدامند ؟

10/132 

مدلهاي سنتي

مدلهاي رابطه اي

مدلهاي جديد شي گرا

جواب


Transformation چه است و کاربرد آنرا توضيح دهيد؟

11/132 

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

جواب


سه دسته از مدلهاي عام بانک اطلاعاتي را نام ببريد؟

12/132 

1. مدلهاي قديمي

مانند مدلهاي سلسله مراتبي و شبکه اي

2.مدلهاي سنتي و يا رابطه اي

که هنوز در دنياي بانک اطلاعاتي حرف اول را مي زنند، و داده ها در آن به صورت رکوردهاي مرتب و مرتبط سازماندهي مي شوند، و بانک اطلاعاتي به صورت مجموعه اي از رابطه ها طراحي مي شود.

3.مدلهاي جديد ( معنايي - فرا رابطه اي )

که براي ذخيره سازي Multimedia و ... استفاده مي شود.

جواب


نام ديگر دادگان چه است ؟

13/132 

Meta data مي باشد که زير مجموعه اي از کاتالوگ سيستم مي باشد.

جواب


منظور از لغتنامه ي داده ها و يا Data dictionary در DBMS چه است ؟

Homonym و Symonym را نيز توضيح دهيد.

14/132 

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

اين مرجع لغتنامه داده ها نام دارد.

در مرحله ي طراحي بانک اطلاعات، هرگاه طراح براي مفهومي نامي برگزيند بايد آنها در لغتنامه داده ها همراه با معناي آن و فرمت آن و ... وارد نمايد.

اين سيستم از بروز اشتباهاتي شبيه وارد کردن يک نام با دو معني مختلف يا Homonym جلوگيري مي کند. و يا دو نام براي يک مفهوم Synonym نيز جلوگيري مي کند.

جواب


کاتالوگ سيستم و يا System cataloge را توضيح دهيد؟

15/132 

اين سيستم به صورت خودکار به روز مي شود، و لغتنامه ي داده ها را در بر مي گيرد و اطلاعاتي مانند سطح دسترسي افراد و تاريخ ايجاد و به روز رساني و ... در آن نگهداري مي شود. به اين اطلاعات دادگان و يا همان Meta data مي گويند.

جواب


منظور از امنيت و يا همان Security در DBMS چه است ؟

روشهاي آنرا نيز توضيح دهيد ؟

16/132 

به معناي حفاظت داده ها در مقابل خطراتي چون سيل، زلزله و دسترسي غير مجاز مي باشد.

روشهايي مانند تعيين Password و سطح دسترسي در اين زمينه مي باشد.

جواب


جامعيت يا Integrity را توضيح دهيد؟

17/132 

به معني صحت داده ها و پردازشها و پيروي از مقررات سيستم است.

مثلا"، موجودي واقعي حسابهاي بانکي نبايد منفي باشد و ...

جواب


تراکنش يا Transaction را توضيح دهيد؟

18/132 

هرگونه برنامه اي که توسط کاربر در محيط بانک اطلاعاتي اجرا مي شود تراکنش و يا همان Transaction نام دارد.

جواب


منظور از داده هاي مانا يا Persistent چه است؟

19/132 

در بانک اطلاعاتي آنچه در درجه ي اول اهميت دارد داده است و نه برنامه. داده هاي بانک اطلاعات را مانا مي گويند زيرا برنامه ها مي آيند و مي روند و آنچه باقي مي ماند داده ها هستند.

جواب


خواص ACID و يا يهاپ چه هستند ؟ ( چهار خواصي که صحت و امنيت و جامعيت تراکنشها را تضمين مي کنند )

20/132 

1.يکپارچگي ( Atomicity )

2.همخواني ( Consistency )

3.انزوا ( Isolation )

4.پايايي ( Durability )

جواب


يکپارچگي و يا Atomicity را توضيح دهيد؟

21/132 

يا تمامي دستورالعملهاي يک تراکنش انجام مي شود و يا هيچکدام از آنها.

براي مثال در تراکنشهاي مالي مرسوم است که چند بخشي هستند، اگر يک يا دو بخش از مجموع سه مرحله عمليات انتقال وجوه انجام شود و مثلا" بخش چهارم و يا پنجم انجام نشود، در اين صورت تراکنش صورت نمي گيرد و تغييري در داده ها ايجاد نخواهد شد.

جواب


همخواني يا Consistency را توضيح دهيد؟

22/132 

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

جواب


دو نوع پايان که يک تراکنش ممکن است داشته باشد را نام ببريد؟

23/132 

1.پايان نا موفق يا سقوط و يا abort

2.پايان موفق يا انجام و يا commit

جواب


قابليت انزوا و يا Isolation را توضيح دهيد؟

24/132 

اکثر تراکنشها که به نظر مي رسد همزمان اجرا مي شوند، همروندي را روي يکديگر چنان دارند که گويا هر کدام در انزوا انجام مي شود.

جواب


خاصيت پايايي يا Durubility را توضيح دهيد؟

25/132 

تراکنشهايي که به مرحله ي انجام و يا Commit برسند، اثرشان ماندني است و هرگز به صورت تصادفي از بين نمي روند. قبل از اعلام انجام موفق در جايي ديگر ثبت گرديده است.

جواب


منظور از تصوير ادراکي بانک اطلاعاتي يا Database schema چه است ؟

26/132 

مجموعه ساختارهاي طراحي شده در بانک اطلاعاتي بدون توجه به داده هايي که در آنها قرار مي گيرد، شماي بانک اطلاعاتي نام دارد، مثل جداول.

جواب


منظور از استقلال داده ها چه است ؟

27/132 

مستقل بودن ذخيره سازي داده ها از کاربرد آنها مي باشد.

هر يک از مدلهاي بانک اطلاعات از نوعي تجريد يا انتزاع بهره مي برند.مثلا" رابطه اي از تجريد به نام جدول استفاده مي کند، داده ها هر چه باشند در قالب چند جدول قرار مي گيرند.

جواب


زبانهاي بياني يا Declarative چه هستند، توضيح دهيد ؟

28/132 

در بانک اطلاعات از زبانهاي بياني که به آنها زبانهاي پرس و جو و يا Query Language مي گويند، استفاده مي شود.

در زبان بياني کافي است کاربر بگويد چه چيز لازم دارد، تا سيستم براي او استخراج کند، اينکه چگونه اين اطلاعات استخراج مي شود از ديد کاربر مخفي است.

جواب


زبانهاي توکار و يا Embeded Languages چه هستند ؟

29/132 

از يک زبان برنامه نويسي سطح بالا، مانند پاسکال به عنوان زبان ميزبان استفاده مي شود و درون آن از دستورات SQL استفاده مي شود.

جواب


در بانک اطلاعاتي دو نوع زبان مورد نياز است، نام ببريد ؟

30/132 

1.DDL يا زبان تعريف داده ، براي تغيير و تعريف ساختارها و جداول

2.DML يا زبان کار با داده ، براي استخراج اطلاعات از داده ها

جواب


SQL چه است ؟

31/132 

يک زبان بياني که هر دو کار DDL و DML را يکجا انجام مي دهد

جواب


در مقوله ي طراحي بانک اطلاعاتي چه چيزهايي مهم است ؟

32/132 

1.چرخه ي طراحي مانند نرم افزارها

2.لايه هاي چهارگانه ي بانک

3.نرم مالسازي در مدل رابطه اي

جواب


مراحل طراحي با بانک اطلاعاتي ER داراري دو بخش است، آنها را نام ببريد؟

33/132 

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

2.ارتباط، که پديده ها را به هم پيوند مي دهد.

جواب


موجوديت، صفت و ارتباط را در نمودار ER چگونه نمايش مي دهند ؟

34/132 

موجوديت يا پديده را با يک مستطيل نمايش مي دهند و صفات آنرا به صورت دايره در اطرف آن. ارتباط را با لوزي نمايش مي دهند.

جواب


صفت در نمودار ER انواع مختلفي دارد، آنها را نام ببريد ؟ ( چهار مورد )

35/132 

1.صفت کليدي

2.صفات ساده و مرکب

3.صفت مشتق

4.صفت يک مقداري يا چند مقداري

جواب


صفت کليدي را تعريف کنيد ؟ مثالي از يک صفت کليدي بيان کنيد؟

در نموداري ER صفت کليدي را چگونه نمايش مي دهند ؟

36/132 

کليد عبارت است از يک يا چند صفت که در يک پديده منحصر به فرد است. به عنوان مثال در پديده ي دانشجو ( موجوديت دانشجو ) شماره دانشجويي يک صفت کليدي است.

در ER ، زير نام صفات و يا صفت کليدي ( درون دايره ها ) خط مي کشند.

جواب


منظور از صفت ساده يا مرکب چه است ؟

37/132 

يک صفت مانند سال تولد، تجزيه نا پذير است و صفت ساده نام دارد. اما يک صفت مانند آدرس محل سکونت تجزيه پذير است و صفت مرکب نام دارد. در ER اجزاي صفت ترکيبي در پرانتز نوشته مي شود مانند :

دانشجو ( نام، نام خانوادگي، آدرس ( شهر، خيابان، پلاک )، رشته ، ... )

جواب


منظور از صفت تک مقداري و چند مقداري چه است ؟ و در ER چگونه به نمايش گذاشته مي شود ؟

38/132 

مثلا" صفت مدرک تحصيلي استاد که مي تواند چندين مقدار بگيرد در مدل ER با دو خط به پديده وصل مي شود.

جواب


صفت مشتق را توضيح دهيد ؟

39/132 

صفتي است که در پديده وجود خارجي ندارد، ولي در صورت لزوم مي توان آنرا بدست آورد. مثلا" محاسبه ي معدل.

جواب


وقتي مي خواهيم يک ارتباط را در ER رسم کنيم چه مسايلي را بايد در نظر بگيريم ؟ ( شش مورد )

40/132 

1.درجه ي ارتباط

2.اتصال و حد

3.شرکت اجباري يا اختياري در ارتباط

4.نياز به صفت در ارتباط

5.وابستگي وجودي

6.اشتراک صفت يا ارث بري

جواب


درجه ي ارتباط را در ER توضيح دهيد؟

41/132 

درجه ي ارتباط برابر با تعداد پديده ( موجوديت ) هايي است که در آن ارتباط مشارکت دارند. عددي است صحيح و کوچکتر از 5 .

شکل صفحه ي 25 کتاب درسي ملاحظه شود.

جواب


منظور از اتصال در نمودار ER چه است ؟ ( به طور کلي در نمودار ER سه نوع اتصال داريم، آنها را نام ببريد و توضيح دهيد )

42/132 

1. 1-1

2. 1-M

3. N-M

جواب


منظور از مشارکت اجباري يا اختياري در ارتباط چه است ؟ در نمودار ER چگونه اين دو را نشان مي دهند ؟

43/132 

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

در نمودار ER يک ارتباط اجباري به صورت معمولي نمايش داده مي شود، و يک ارتباط اختياري به صورت خط و دايره.

شکلهاي صفحات 29 و 31 کتاب درسي ملاحظه شوند.

جواب


منظور از نياز به صفت در ارتباط چه است ؟ و کليد در صفات يک ارتباط چه است ؟

44/132 

حول لوزي يک مستطيل رسم مي شود و صفات آن ارتباط به صورت دايره هاي کوچک بدان متصل مي شوند که همه ي صفات در آن کليد هستند.

جواب


منظور از وابستگي وجودي چه است ؟ در ER چگونه آنرا نمايش مي دهند ؟

45/132 

يک موجوديت را در نظر بگيريد که اصطلاحا" به آن موجوديت ضعيف مي گويند، و در ارتباط با يک موجوديت قوي است و در صورت حذف موجوديت قوي يا اصلي موجوديت ضعيف نيز حذف مي شود.

در ER با دو مستطيل تو در تو آنرا نمايش مي دهند.

شکل صفحه ي 33 کتاب درسي ملاحظه شود.

جواب


منظور از ارث بري چه است ؟

46/132 

مانند شکل صفحه ي 34،

يک موجوديت يا پديده به نام شخص در نظر مي گيريم، اين شخص داراي نام، نام خانوادگي و آدرس و ... است. يک ارتباط به نام "هست" در نظر مي گيريم، و سپس اين ارتباط را که يک سرش به موجوديت "شخص" متصل است، سر ديگرش را به موجوديتي مانند "دانشجو" متصل مي کنيم، از اينرو از تکرار اطلاعات جلوگيري مي کنيم. و به اين روش ارث بري مي گويند، زيرا دانشجو از شخص ارث برده است و نام، نام خانوادگي و آدرس را براي خود ايجاد کرده است.

جواب


مراحل شروع طراحي در NIAM را توضيح دهيد؟

47/132 

فرآيند طراحي در اين مدل با استخراج مجموعه اي از رويدادهاي ساده يا elementary facts آغاز مي گردد.

جواب


مراحل طراحي در NIAM را نام ببريد ؟ ( چهار مورد )

48/132 

1.تبديل مثالهاي اطلاعاتي به رويدادهاي اصلي

2.رسم نمودار مقدماتي تصوير ادراکي

3.حذف پديده ها و نقشهاي اضافي و تکراري

4.قيود يکتايي، حد و ارث بري

جواب


تديل مثالهاي اطلاعاتي به رويداد اصلي را در NIAM توضيح دهيد؟

49/132 

در مدل NIAM ، هر پديده سه جز دارد. نوع يا Type، لقب يا Lable که معادل صفت در ER است، و نمونه يا Instance.

جواب


رسم نمودار مقدماتي تصوير ادراکي را توضيح دهيد؟

50/132 

نوع پديده يا Type به صورت بيضي ترسيم و نام پديده درون آن و يا در کنار آن نوشته مي شود.

نوع Type ، يا لقب و يا Label ، با بيضي رسم شده با نقطه چين نمايش داده مي شود، و نام آن درون يا در کنار آن نمايش داده مي شود.

کليد شناسه، يا کد و يا نام، به همين صورت در Type نوشته مي شود.

جواب


ارتباط بين پديده ها چگونه در NIAM مشخص مي شود؟

51/132 

با Role نمايش مي دهند، و يک يا چند مستطيل در کنار هم است.

جواب


حذف پديده ها و نقشهاي اضافي در NIAM به چه صورت است ؟

52/132 

پديده ها بايد دو به دو از يکديگر مجزا باشند، يعني عضوي نتوان يافت که به بيش از يک پديده تعلق داشته باشد.

صفحه ي 41 کتاب درسي مطالعه شود

جواب


ارث بري در مدل NIAM را توضيح دهيد ؟

53/132 

شکل صفحه ي 44 کتاب درسي،

پديده و نقش مشخص شده و روي بخش تکراري آکولاد رسم مي شود.

جواب


UML به چه معني است و در چه سالي ارايه شد ؟

54/132 

Unified Modeling Language در سال 1995 ، به عنوان بهترين روش ارايه شده است.

جواب


منظور از Class در UML چه است ؟

55/132 

مدل Class در UML ابزار اصلي براي ساختار منطقي يک سيستم نرم افزاري است که نيازمنديهاي داده و رفتار اشياء را بيان مي کند. يک کلاس يک الگو و يا مدل از اشياء و نمونه هايي است که در زمان اجرا ايجاد مي شوند.

جواب


دسترسي به عناصر درون کلاس در UML را شرح دهيد؟

56/132 

يک کلاس شامل يک سري عناصر داده است، که خودش مسول آنها است. دسترسي به اين عناصر دروني، بايد از طريق واسط کلاس يا رفتارهاي تعريف شده توسط کلاس انجام گيرد.

جواب


انوع ارتباط کلاس و اشياء را در UML بگوييد ؟

57/132 

1.ارتباط

2.کلاس اجماع

3.ترکيب

4.وراثت

5.ناوبري

صفحه ي 47 کتاب درسي مطالعه شود

جواب


به چند صورت مي توان بين دو جدول ارتباط بر قرار کرد ؟

58/132 

1. کليد خارجي، کليد جدول در جدولي ديگر مي آيد. مثلا" در جدول دانشجو، کليد جدول دانشکده به عنوان يک ستون مجزا مي آيد.

2.جدول ارتباط، جدولي است که ارتباط بين دو يا چند جدول را مشخص مي کند. مثلا جدولي به نام " ارايه " مي تواند ارتباط استاد، دانشجو و گروه درسي را بيان نمايد.

صفحات 52و53 کتاب درسي حتما" مطالعه شود

پايان فصل دوم

جواب


سنتي ترين مدل بانک اطلاعاتي چه نام دارد؟

59/132 

مدل رابطه اي به عنوان مدل سنتي بانک اطلاعاتي از سه دهه ي گذشته تا به حال، پيشتاز دنياي نرم افزار بوده و هست.

جواب


دامنه را تعريف کنيد؟

60/132 

مجموعه ي تمام مقادير ممکني که يک صفت مي توان بپذيرد را کويند.

جواب


ربطه را تعريف کنيد؟

61/132 

طبق شکل صفحه ي 59 کتاب درسي

زير مجموعه اي از ضرب دکارتي چند دامنه است

جواب


زوج مرتب يا Tuple را تعريف نماييد؟

62/132 

ارتباط مجموعه اي از مقادير در يک رابطه است. هر سطر يک جدول معادل يک تاپل است. هر يک از ستونهاي يک جدول معرف يک صفت است. در مدلهاي رابطه اي صفتها دامنه هايي هستند ساده و تجزيه نا پذير.

مثلا" اگر صفتي از نوع تاريخ باشد، ديگر اجزاي آن، روز - ماه - سال قابل دستيابي نمي باشد.

جواب


کليد را تعريف کنيد؟

63/132 

هر رابطه داراي شناسه اي است، که کليد ناميده مي شود ( Key ) .

در رابطه اي مانند D1:D2 کليد يک رابطه تمام عضوهاي آنرا به صورتي منحصر به فرد مشخص مي کند. به عبارت ديگر کليد يک رابطه غير تکراري است و مقدار کليد هيچگاه تهي نمي باشد.

جواب


انواع کليد را نام ببريد ؟

64/132 

لطفا" ابتدا توضيحات صفحات 60 و 61 کتاب درسي مطالعه شود

1.ابر کليد

2.کليد کانديد

3.کليد اصلي

4.کليد فرعي

5.کليد خارجي

جواب


انوع جامعيت را در مدل رابطه اي توضيح دهيد ؟

65/132 

1.ارجاع ( در صورتيکه کليد خارجي درست تعريف شده باشد )

2.درون رابطه اي ( هر رابطه به تنهايي صحيح باشد )

3.دامنه اي ( تمامي صفات در تمامي رابطه ها از نوع دامنه ي خود باشد )

لطفا" جدول صفحه ي 69 مطالعه شود

و فصل سوم کلا" مجددا" مطالع شود

جواب


فصل 4

SQL چگونه زباني است ؟

66/132 

SQL به معناي Structured Query Language مي باشد - براي اولين بار در سال 1976 پديد آمد و ده سال بعد توسط ANSI استاندارد شد. زباني است بياني و يا همان Declarative يعني کاربر آنچه را که لازم دارد با دستورات محدودي بيان مي کند و روال کار را تشخيص و انجام مي دهد.

جواب


زبان SQL از چند بخش تشکيل شده است ؟

67/132 

زبان SQL مانند يک زبان بياني کامل از دو بخش تشکيل شده است، بخش DDL جهت تعريف داده ها و DML براي کار با داده ها.

جواب


دستور تعريف دامنه در SQL چه است ؟

68/132 

Create Domain Domain_name type

Default Var1

Constraint Table_name

Check( value in var1,var2,var3)1

منظور از دامنه در SQL مقاديري است که مي توانيم به خانه هاي يک جدول بدهيم.

مانند يک Type در زبان برنامه نويسي است!

جواب


چگونه در SQL مي توان يک جدول ساخت ؟

69/132 

Careate table table_name

)

Colume_name type NOTNULL, 1

Colum_name2 Chr(5) NOT NULL,1

Colum_name3 smith,1

Primary key (Colum_name),Unique (Colum_name)1

در اين دستور، يک جدول با نام Table_name توليد مي شود.

در قسمتهاي بعدي به عدد 1 توجه ننماييد، براي مشخص نمودن انتهاي جمله است، و کلمه ي NOT NULL اگر ذکر شود، يعني محتوي اين جدول نمي تواند تهي باشد.

Primary کليد اصلي را مشخص مي نمايد، و Unique کليد فرعي غير تکراري را، که رو به روي آن نام سر ستون ذکر شده است.

جواب


چگونه مي توان کليد خارجي را مشخص نمود و به جدول ديگر آنرا ارتباط داد ؟

لطفا" جواب در فرمت SQL ذکر شود.

70/132 

Foreign key Colum_nname preference Table_name

Colum_name نام ستوني است که کليد خارجي قرار است باشد، و Table_name نام جدولي است که بدان اشاره دارد.

جواب


مي خواهيم در SQL اگر کليد خارجي حذف شد، ستون مربوط به آن در جدول اصلي حذف شود، بايد از چه دستوري استفاده نمود ؟

71/132 

ON DELETE CASCADE

اين دستور بلافاصله پس از مشخص نمودن کليد خارجي Foreign_key بکار مي رود.

جواب


مي خواهيم در SQL در صورت به روز رساني کليد خارجي کل ستون نيز در جدول اصلي به روز شود؟

72/132 

ON UPDATE CASCADE

اين دستور بلافاصله پس از مشخص نمودن کليد خارجي Foreign_key بکار مي رود.

جواب


چگونه مي توان يک قانون در يک جدول وضع کرد ( نوعي جامعيت ؟ )

73/132 

پس از ايجاد جدول در انتهاي آن از دستور CHECK استفاده مي نماييم :

Check ( unit > 0 and Unit <5 );1

به عدد 1 توجه نشود.

درواقع با استفاده از Check شما گفته ايد ستون Unit که در Create table ايجاد شده است مقاديرش حتما" بايستي بين 0 و 5 باشد.

جواب


به جاي Check از چه دستوري مي توان استفاده نمود ؟

74/132 

مي توان از دستور ASSERTION استفاده نمود، به عنوان مثال :

CREATE ASSERTION crs-Unit

CHECK( NOT EXIST ( Select * FROM crs WHERE unit < 0 );1

لطفا" به عدد 1 ذکر شده در انتها توجه نفرماييد.

جواب


براي اعمال تغييراتي چون تغيير نوع داده، افزودن صفت، حذف ستون در يک جدول که قبلا" ايجاد شده به چه صورت مي توان عمل کرد در SQL ؟

75/132 

از دستور ALERT TABLE استفاده مي شود.

جواب


چگونه با استفاده از ALERT_TABLE مي توان نوع داده را در جدول تغيير داد ؟

76/132 

ALERT TABLE table_name MODIFY ( Cname char(40) ) ;1

در دستور بالا، نام داده ي Cname را انتخاب کرده ايم و نوع داده ي آنرا هر چه باشد به Char(40)1 تغيير داده ايم.

جواب


چگونه با ALERT TABLE مي توان يک صفت ( يا يک ستون ) به يک جدول اضافه نمود ( روي سخن ما SQL است ) .

77/132 

ALERT TABLE table_name ADD ( text char(100));1

لطفا" به عدد 1 توجه نشود. در مثال بالا، ستون Text با طول 100 به جدول ما اضافه شده است.

جواب


خذف ستون در SQL را توضيح دهيد؟

78/132 

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

جواب


چگونه در SQL مي توان به يک جدول اطلاعاتي را وارد نمود؟

79/132 

INSERT INTO table_name

Values ( list of vars );1

لطفا" به عدد 1 توجه نشود. مثال :

insert into student values ("1470","database","Dalvand");1

در مثال بالا به جدول student اطلاعات دانشجو دالوند اضافه شده است.

جواب


چگونه در SQL مي توان از جدولي به جدول ديگر کپي نمود؟

80/132 

insert into table_name1

select text1,text2

from table_name2

در مثال بالا، از table_name2 ستونهاي text1,text2 را به جدول table_name1 کپي مي کند.

جواب


حذف از جدول را در SQL توضيح دهيد ؟

81/132 

DELETE FROM table_name

WHERE item is NULL;1

لطفا" به عدد 1 توجه نشود.

در مثال بالا، از جدول table_name ستون item انتخاب مي شود و هرجا که null باشد حذف مي شود.

جواب


چگونه مي توان کلا" يک جدول را در SQL حذف نمود ؟

82/132 

DROP table_name;1

لطفا" به عدد 1 در انتهاي جکله توجه نشود.

جواب


به روز رساني يا ايجاد تغيير در داده يا داده هاي يک سطر يا چند سطر در جدول را توضيح دهيد ؟

83/132 

Update table_name

set var1=1,var2=a,var3=c

where ..... ; 1

لطفا" به عدد 1 توجه نشود.

براي مثال:

update crs

set unit=4

where ( cname="database");1

در مثال بالا، در جدول crs هرجا که cname ( نام يک ستون است ) برابر باشد با Database مقدار unit در آن سطر برابر مي شود با 4 .

جواب


استخراج و نمايش اطلاعات در SQL را توضيح دهيد ؟

84/132 

SELECT * 1

From stud

Where unit=4

لطفا" به عدد 1 توجه نشود.

در مثال بالا، از جدول stud ابتدا دنبال سطري مي گردد که مقدار unit در آن 4 باشد، و سپس کل سطر را نمايش مي دهد. بخاطر اين کل سطر را نمايش مي دهد که علامت * در رو به روي SELECT ذکر شده است.

جواب


استخراج و نمايش اطلاعات ستونهاي خاص در SQL را توضيح دهيد ؟

85/132 

Select sname,score,unit

from stud

where unit=4

در مثال بالا، در جدول stud به دنبال سطري مي گردد که مقدار unit در آن برابر با 4 است، و در صورت يافتن ستونهاي sname,score,unit را نمايش مي دهد.

جواب


استخراج و نمايش اطلاعات از دو جدول را در SQL توضيح دهيد ؟

86/132 

SELECT sname,C#,score

from stud,sec

where stud.sname = sec.c

در مثال ذکر شده، مي گردد در دو جدول stud و sec بدنبال شرطي که رو به روي where ذکر شده است، و سپس در صورت بر قراري شرط sname و C# و Score را نمايش مي دهد.

جواب


مرتب کردن خروجي در SQL را توضيح دهيد ؟

87/132 

با استفاده از دستور ORDER BY استفاده مي شود. اگر قيد DEC در رو به روي آن ذکر شود، نزولي مرتب مي شود و اگر قيد ASC به صورت صعودي.

براي مثال،

SELECT DISTINCT cname,crs.c

from crs,sec

where crs.c=5

ORDER BY cname DEC

مرتب نمودن با استفاده از cname به صورت نزولي

جواب


ترکيب کردن مرتب کردن خروجي در SQL را توضيح دهيد ؟

88/132 

براي مثال اگر بخواهيم، شماره درس را نزولي و شماره گروه را صعودي مرتب کنيم و سپس گزارش بگيريم به صورت ذيل در SQL در خواست مي نماييم :

Select C#,SEC# 1

From SEC 1

Order by C# desc, SEC# asc

جواب


عملگرهاي مجموعه اي در SQL را نام ببريد ؟

89/132 

Union براي اجتماع

Intersect براي اشتراک

Except براي تفاضل

براي مثال،

Select Sname,Clg# 1

From stud

UNION

Select Pname, Clg# 1

From prof; 1

جواب


توابع محاسباتي در SQL را توضيح دهيد ؟

90/132 

1.SUM

2.AVG

3.MAX

4.MIN

5.COUNT

جواب


مثالي از تابع COUNT را بگوييد ؟

91/132 

Select count(S#) 1

From stud

Where city=Tehran

اين مجموعه دستور تعداد دانشجوياني که شهرشان تهران است را مي شمارد.

جواب


اگر بخواهيم تابع COUNT داده هاي تکراري را در نظر نگيرد بايد به چه صورت عمل کرد؟

92/132 

Select count(DISTINIC ESP) as ESP_NO

From prof; 1

دستور بالا، شمارشي بدون در نظر گرفتن داده هاي تکراري بر روي ESP اعمال مي کند و جواب را به عنوان ESP_NO بر مي گرداند.

جواب


چگونه در SQL مي توان تعداد سطرهاي يک جدول را شمرد ؟

93/132 

SELECT COUNT(*) 1

FROM CRS; 1

جواب


چگونه در SQL مي توان ميانگين اطلاعات را حساب کرد ؟

94/132 

Select AVG(Unit*Score) / Sum(unit) 1

From crs,sec 1

Where crs.c# = sec.c# 1

And cname="a" 1

or Cname="b" 1

لطفا" صفحه ي 116 مطالعه شود

جواب


منظور از گروه بندي در SQL چه است ؟

95/132 

زياد اتفاق مي افتد که مي خواهيم داده ها را گروه بندي يا دسته بندي کنيم، به عبارت ديگر مي خواهيم خروجيها را به تفکيک داشته باشيم.

براي مثال نمونه کد ذيل را در نظر بگيريد :

Select Clg#,Max(Avg),min(avg) 1

From stud

Group by clg# 1

جواب


جستجو در رشته ها در SQL را توضيح دهيد ؟

96/132 

Select * 1

From Crs 1

Where unit=3 or unit=4

and Cname LIKE "%Data%"; 1

در مثال بالا، در ستون Cname کلمه ي اطلاعات را جستجو مي کند، مانند INSTR در بيسيک

جواب


انواع LIKE را در SQL توضيح دهيد ؟

97/132 

Cname LIKE "DB_" 1

در مثال بالا، به اين مضمون است که کلمه اي که سه حرفي باشد و اولش با DB شروع شود

Cname LIKE "%ALI" 1

در مثال بالا، کلمه اي که اولش علي باشد و مهم نيست چند حرف است

Cname LIKE "%IRAN%" 1

در مثال بالا، کلمه اي که در هر کجاي آن بدن توجه به طولش کلمه ي IRAN ذکر شده باشد

جواب


دستور Exist را توضيح دهيد

98/132 

لطفا" صفحات 121 و 122 کتاب درسي مطالعه شود

جواب


چگونه در SQL مي توان با مقايسه ي بين دو جدول گروه بندي را توضيح داد ؟

99/132 

SELECT S# 1

FROM sec 1

GROUP by S# 1

Having Count ( Distinic C# ) = (Select count ( C#) from Crs ); 1

جواب


کدام روايت SQL از ضرب دکارتي پشتيباني مي کند و به چه صورت است ؟

100/132 

از ضرب دکارتي در روايت دوم SQL پشتيباني مي شود، و به صورت :

CRS CROSS JOIN CLG; 1 مي باشد.

جواب


پيوند شرطي در SQL روايت دوم به چه صورت است ؟

101/132 

CRS JOIN CLG ON

CRS.Clg# = Clg.Clg# 1

AND Unit=3; 1

جواب


پيوند طبيعي در SQL روايت دوم به چه صورت است ؟

102/132 

CRS NATURAL JOIN SEC; 1

جواب


نحوه ي استفاده از يک پيوند طبيعي در SQL روايت دوم به چه صورت است ؟

103/132 

Select Cname,Sec# 1

FROM CRS NATURAL JOIN SEC

جواب


وظيفه ي دستور ذيل را توضيح دهيد ؟

CRS NATURAL FULL OUTER JOIN

104/132 

سطرهاي هر دو جدول را که با جدول ديگر مقدار همنام مشترک ندارند نيز در خروجي مي آورد

جواب


وظيفه ي دستور ذيل را توضيح دهيد ؟

Natural left outer join

105/132 

سطرهاي جدول سمت چپ که در ديگري مقدار همنام مشترک ندارد عمل مي کند .

جواب


وظيفه ي دستور ذيل را توضيح دهيد ؟

Natural right outer join

106/132 

مانند Natural left outer join است که بجاي چپ از راست استفاده شده است.

جواب


چگونه مي توان در SQL روايت دوم قيد Natural را ذکر نکرد؟

107/132 

مي توان قيد Natural را حذف نمود و بجاي آن از قيد ON استفاده نمود.

مانند :

crs LEFT OUTER join clg ON

crs.clg# = clg.clg AND Unit=3; 1

جواب


امنيت در SQL روايت 2 با امتياز دهي به کاربران است، انواع اين امتيازات را ذکر نماييد ؟ منظور از امتياز در کل چه است ؟

108/132 

1.Select

2.Insert

3.Delete

4.Update

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

جواب


امتياز Preferences در SQL روايت دوم براي چه است ؟

109/132 

براي کنترل و اعمال محدوديتهاي جامعيتي براي روئساي سازمان

جواب


امتياز USAGE را توضيح دهيد ؟

110/132 

براي استفاده از امکاناتي از قبيل، VIEW

جواب


در SQL روايت 2 چگونه مي توان به کاربران امتياز داد ؟

111/132 

ابتدا GRANT ذکر مي شود و سپس فهرست امتيازات و سپس کلمه ي ON و سپس نام جدولي که اين امتيازات بر روي آن اعمال مي شود، و سپس TO و سپس فهرست کاربران، و سپس جمله ي With grant option

لطفا" صفحه ي 128 کتاب درسي مطالعه شود

جواب


چگونه مي توان امتيازات را از کاربران پس گرفت؟

112/132 

REVOKE ذکر مي شود و سپس ليست امتيازات و سپس ON و سپس نام جدول و سپس FROM و سپس ليست کاربران.

جواب


اگر کاربري خود به غير امتيازاتي داده باشد به چه صورت مي توان امتيازات خود کاربر و آنهايي را که به آنها امتياز داده حذف کرد ؟

113/132 

ابتدا با دو دستور CASCADE و RESTRICT بايد امتيازات اعطا شده را حذف نمود.

جواب


در SQL سه نوع جدول وجود دارد، آنها را نام ببريد ؟

114/132 

1. جداول اصلي که با Create table ايجاد مي شوند و مي توان به آنها دسترسي داشت يا تغيير داد که اصطلاحا" Base table نام دارند.

2.جداول مياني، intermidiate table که از دسترس کاربران بدورند و توسط سيستم در ضمن انجام دستورهاي پيچيده ايجاد مي شوند و سپس از بين مي روند.

3.جداول مجازي Views وجود خارجي و فيزيکي مانند دو نوع ديگر ندارند، ولي مي توان به آنها دسترسي داشت.

جواب


منظور از جدول مجازي يا View چه است ؟

115/132 

منظور ايجاد جدول خلاصه از اطلاعات موجود و محدود کردن ديد کاربر است. ستونهايي از جداول موجود را کنار هم قرار دادن است.

جواب


شکل کلي تعريف ديد چگونه است ؟

116/132 

Create view view_name as * 1

Select .... 2

مانند

Create view schudle as

select cname,sec#,pname

from crs,sec

where crs.c#=sec.c# 1

جواب


چگونه مي توان يک جدول مجازي را نابود کرد ؟

117/132 

DROP VIEW

جواب


روش به روز رساني جدول مجازي چه است ؟

118/132 

در صورتي مي توان جدول مجازي را به روز در آورد که تغييرات مورد نظر روي جدول اصلي بدون اشکال و ابهام باشد. لطفا" مثال صفحه ي 31 کتاب درسي مطالعه شود.

جواب


مهمترين قواعد مشخصي که SQL2 براي به روز در آوردن جداول مجازي مي داند کدامند ؟

119/132 

1-جدول مجازي فقط از يک جدول اصلي ساخته شده باشد

2-در ساختن جدول مجازي از select distinict استفاده نشده باشد

3-اگر جدول مجازي روي جدول اصلي r سخته شد، آنگاه r در زير دستور sunquery نيامده باشد

جواب


پرونده هاي شاخص دار يا indexed چه نوع هستند؟

120/132 

پرونده هايي هستند که علاوه بر داده هاي اصلي داراي بخشي به نام شاخص هستند که درواقع پرونده ها را به چندين ناحيه کوچکتر تقسيم مي کند و بازيابي اطلاعات را سرعت مي بخشد.

جواب


نمونه هايي از شاخص گذاري پرونده ها را بگوييد ؟

121/132 

مثلا" براي پرونده ي حاوي جدول stud مي توان درواقع روي همه صفتها شاخص تعريف کرد، مثلا" شاخص روي ميانگين کمک مي کند که ميانگينها را به چند دسته تقسيم کنيم. مثلا" 0-1 و 2-3 و 4-5 و .... در اينصورت وقتي بخواهيمدنبال شخصي با معدل x بگرديم، کافيست در منطقه اي که x واقع شده، مثلا" 16-17 بگرديم و نه همه ي پرونده ها را.

جواب


فرمت تعيين شاخص در SQL را بگوييد ؟

122/132 

Create [unique] index index_name

ON table_name(attr); 1

اگر قيد Unique استفاده شود، صفت مورد نظر نبايد مقادير تکراري داشته باشد و در به روز در آوردن جدول نمي توانيم مقادير تکراري براي آن صفت وارد کنيم.

Create index crs_index

ON sec(#); 1

جواب


برخي از زيانهاي استفاده از شاخص را بگوييد ؟

123/132 

1-استفاده ي زياد از حافظه

2-مقدار زماني که براي بررسي پرونده و شاخص گذاري آن صرف مي شود

جواب


بانک دانش را توضيح دهيد ؟

124/132 

Knowledge-based و قدرت استنتاج منطقي به بانک اطلاعاتي ره آورد جديدي است که با نامهاي مختلفي مانند بانک اطلاعاتي پويا، بانک اطلاعاتي خبره، بانک اطلاعاتي استنتاجي و بانک اطلاعاتي بازگشتي و استنباطي و غيره از آن ياد مي شود.

جواب


افزودن بانک دانش در دو زمينه کارآيي فوق العاده دارد، نام ببريد ؟

125/132 

1-کشف اطلاعات جديد از ترکيب اطلاعات موجود

2-پردازش پرس و جو در سيستمهاي نا متمرکز

جواب


فصل پنجم

معناي افزونگي چه است ؟ Data redundancy

126/132 

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

جواب


افزونگي در ادغام جداول به چه صورت است ؟

127/132 

وقتي جداول را ادغام مي کنيم، همواره افزونگي به ميزان بزرگترين جدول رخ مي دهد. افزونگي باعث هدر رفتن فضا مي شود، و باعث پايين آمدن سرعت مي شود.

جواب


مزيت ادغام جداول و بروز افزونگي چه است ؟

128/132 

اگر همه ي بانکهاي اطلاعاتي يک جدول بودند ديگر نه نيازي به پيوند بود و نه ضرب دکارتي و پرتو و ... و استخراج اطلاعات ساده مي شد.

جواب


بي نظمي يا Anomaly چه است ؟

129/132 

ادغام چندين بانک و تکرار همه داده هايي که با يکديگر وابستگي دارند، بي نظمي يا Anomaly نام دارد.

جواب


مقادير تهي يا Null views را بگوييد ؟

130/132 

با ادغام جداول از نشان دادن برخي اقلام اطلاعاتي بدون استفاده از مقادير تهي نا توانيم.

جواب


وابستگي تابعي يا Functional dependency را توضيح دهيد ؟

131/132 

افزونگي و وابسته اي ارتباط تنگاتنگ دارند و انواع مختلفي دارد:

1-وابستگي تابعي

2-وابستگي پيوندي

3-وابستگي چند مقداري

جواب


وابستگي تابعي را تعريف کنيد ؟

132/132 

اگر A و B دو مجموعه ي صفت در شماي R باشند، آنگاه وابستگي تابعي A ---> B بر قرار است اگر به ازاي هر A يک B باشد.

جواب