
نوشته شده توسط
DelphiAssistant
خوبه که بین جدول Course و Field (بهتره بجای Field کلمه Major رو استفاده کنید) یک Relation وجود داشته باشه.
یک رشته تحصیلی بنام دروس عمومی در جدول Field ایجاد کنید و در لیست تون اون رو نشون ندید (این رشته فقط برای لیست کردن دروس عمومی استفاده میشه). فرض کنیم Course_ID رشته مذکور 1 و Course_ID رشته ای که میخواهید لیست دروس اش رو بدست بیاورید 21 باشه.
اونوقت چنین Query میتونه کارساز باشه:
Select * from Field where Course_ID = 21
Union All
Select * from Field where Course_ID = 1
ممکنه راه بهتری هم وجود داشته باشه، اما این چیزی بود که به ذهن من رسید.
مرسي از راهنماييتون استاد
روشي كه گفتيد خيلي خوب و عالي بود
پس با اين حساب ديگه نيازي به جدول واسط Course_Field ندارم؟آخه من اين جدولو قبل از اينكه راهنمايي شما رو ببينم ، به توصيه ي ساير دوستان ايجاد كردم اماطبق روشي كه شما فرمودين مي خوام كار كنم:
حالا يه راهنمايي ديگه مي خواستم ازتون :
1-همونطور كه مي دونيد بعضي از رشته ها هستن كه توي چندين درس مشترك هستن ، آيا ميشه به روشي كه شما گفتيد يه فيلد ديگه توي جدول رشته به اين دسته از دروس مشترك اختصاص بدم؟
2-دانشگاه هايي رو تصور كنيد كه براي واحد هاي درسي شون قيمت در نظر مي گيرن . مثلا سه نوع واحد داريم :
1-دروس عملي عمومي (مثل تربيت بدني ، كارگاه عمومي و ...)
2-دروس عملي تخصصي (مثل آزمايشگاه مدار منطقي ، آزمايشگاه سيستم عامل و ...)
3-دروس تئوري (مثل پايگاه داده ها ، اخلاق اسلامي ، معارف اسلامي 1 و ...)
حالا من سوالم اينه كه چه طور مي تونم قيمت هر درس رو معين كنم؟ و كجا بايد اين قيمت ها نگهداري بشه، آيا نياز به يك جدول ديگه دارم؟
چهار تا از جداول من كه ممكنه به اين سوال مرتبط باشن، اينا هستن :
1-جدول Course (درس)
2-جدول teacher(استاد)
3-جدول CourseGroup(جدول گروه درسي ،كه جدول واسط course و teacher است ، چون هر استاد چندين درس را ارائه ميده و هر درس هم ممكنه توسط چندين استاد ارائه بشه )
4-جدول Major(رشته)
اگه ممكنه راهنمايي بفرماييد.