PDA

View Full Version : سوال: یک سوال در دیتا بیس سایت دانشگاه؟



sara_B
جمعه 08 آذر 1387, 12:07 عصر
با سلام خدمت دوستان عزیز:لبخندساده:
من یک پروژه درسی دارم انجام می دم که موضوعش طراحی وب سایت یه دانشگاهه
حالا توی بخش Database دچار مشکل شدم
فرض کنید 2 تا از جدولهای من Course(درس ) و Field(رشته تحصیلی) هستند


سوال اولم:
آیا به کلید خارجی IDField (کلید اصلی رشته تحصیلی) در جدول Course احتیاج داریم؟


سوال دوم:
اگه جواب سوال اول مثبته ، پس وقتی یک درس مانند معارف اسلامی 1 که بین رشته ها مشترک است ، باید در جدول Course ، به ازای هر رشته ی درسی که داریم ، یک ID مجزا به درس معارف اسلامی 1 اختصاص بدهیم یا نه؟


مرسی

hassanf
جمعه 08 آذر 1387, 12:40 عصر
سلام
رابطه چند به چند بین دو جدول برقرار کنید(یک جدول CourseField با فیلدهای Course_Id و Field_Id بین دو جدول قرار دهید.)

amin_alexi
جمعه 08 آذر 1387, 17:33 عصر
سلام
رابطه چند به چند بین دو جدول برقرار کنید(یک جدول CourseField با فیلدهای Course_Id و Field_Id بین دو جدول قرار دهید.)
با تشکر از دوست عزیز ....
شاید این جوری گفته بشه بهتر باشه !
با توجه به اینکه رابطه چند به چند بین جداول شما وجود داره شما باید با استفاده از یک جدول میانجی که کلید اصلی اون حاصل کلید دو جدول دیگست این رابطه چند به چند رو به دو رابطه 1 به چند بشکنید با همون جدول CourseField

مهدی کرامتی
جمعه 08 آذر 1387, 19:07 عصر
خوبه که بین جدول 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

ممکنه راه بهتری هم وجود داشته باشه، اما این چیزی بود که به ذهن من رسید.

zeinab.gholipoor
شنبه 09 آذر 1387, 09:48 صبح
سلام :
من يه پروزه دانشجويي درباره فروشگاه پوشاك دارم در پايگاه داده با sql مي شه كمكم كنيد چيكار كنم .

saed2006
شنبه 09 آذر 1387, 10:56 صبح
خوبه که بین جدول Course و Field (بهتره بجای Field کلمه Major رو استفاده کنید) یک Relation وجود داشته باشه.
یک رشته تحصیلی بنام دروس عمومی در جدول Field ایجاد کنید و در لیست تون اون رو نشون ندید (این رشته فقط برای لیست کردن دروس عمومی استفاده میشه). ممکنه راه بهتری هم وجود داشته باشه، اما این چیزی بود که به ذهن من رسید.

جناب DelphiAssistant منظور شما رو متوجه نشدم یعنی جدول سوی ایجاد نشود؟
فیلد های رشته تحصیلی دروس عمومی چیا هستند؟

sara_B
شنبه 23 آذر 1387, 10:47 صبح
خوبه که بین جدول 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(رشته)
اگه ممكنه راهنمايي بفرماييد.

siona barnamenevis
شنبه 30 آبان 1388, 23:52 عصر
[quote=sara_B;640668]
با سلام خدمت دوستان عزیز:لبخندساده:
من یک پروژه درسی دارم انجام می دم که موضوعش طراحی وب سایت یه دانشگاهه
حالا توی بخش Database دچار مشکل شدم


سلام sara_B. امکانش هست جداولی رو که طراحی کردی برای من بفرستی منم برای پروژهام به دیتابیس دانشگاه نیاز دارم و تو طراحی اون مشکل دارم چون ترم های پیش این درس رو بر نداشتم و این ترم هم زمان با پروژه پایانی دارمش برای همین خوب بلد نیستم
ممنون میشم اگه از تجربیاتت من رو هم بهره مند کنی :لبخندساده: