enthusiasted
New Member
سلام. من می خوام یه سیستم امتیاز دهی عمومی درست کنم که توی دیتابیس ذخیره بشه. مثلا فرض کنیم که در یک مدرسه می خواهیم به دانش آموزان از لحاظ درس های مختلف امتیاز بدیم. خودم یه همچین ساختاری رو واش در نظر گرفتم.
یک جدول برای دانش آموز:
0 - آی دی
1- نام
2- عکس
یک جدول برای درس:
0- آی دی
1- نام درس
یک جدول برای ارتباط بین درس و دانش آموز. هر دانش آموز درسهای خاصی را دارد. پس توی یک جدول مشخص می کنیم که چه دانش آموزی چه درسی دارد. مثلا اگر آی دی دانش آموز 5 باشد می تواند در این جدول دارای 3 رکورد باشد که نشان دهنده این است که او دارای سه درس است. و همچنین دانش اموز 7 دارای 2 درس است.
0- آی دی
1- آی دی دانش آموز
2- آی دی درس
مثلا:
رکورد - آی دی دانش آموز - آی دی درس
1 5 6
2 5 3
3 5 2
4 7 3
5 7 5
یک جدول برای کاربران که قرار است به این دانش آموزان امتیاز بدهند.
0- آی دی
1- نام کاربری
یک جدول نهایی نیز برای امتیاز ها. امتیاز ها یا مثبت هستند یا منفی. و ترجمه این جدول این است که مثلا 40 کاربر به دانش اموز شماره 5 در درس شماره 4 امتیاز مثبت داده اند و 12 نفر امتیاز منفی. به این صورت:
0- آی دی
1- امتیاز (مثبت یا منفی)
2- آی دی دانش آموز
3- آی دی درس
4- آی دی کاربر
مثلا:
رکورد - امتیاز - دانش آموز - درس کاربر
1 + 5 2 6
2 + 5 2 7
3 - 5 2 9
4 + 5 3 6
5 - 5 2 5
یعنی: کاربر 6 در درس 2 به دانش آموز 5 مثبت داده است ولی کاربر 9 به او منفی داده است.
این روش به نظر من رسید، ولی حدس می زنم که بعد از گذشت زمان جدول ها حجم بالایی را اشغال کنند و هنگام بازخوانی دچار مشکل شوند. مخصوصا جدول امتیاز دهی بیشترین رکورد را خواهد داشت. اگر راه بهتری برای اجرای این طرح وجود دارد لطفا مرا راهنمایی کنید.
یک جدول برای دانش آموز:
0 - آی دی
1- نام
2- عکس
یک جدول برای درس:
0- آی دی
1- نام درس
یک جدول برای ارتباط بین درس و دانش آموز. هر دانش آموز درسهای خاصی را دارد. پس توی یک جدول مشخص می کنیم که چه دانش آموزی چه درسی دارد. مثلا اگر آی دی دانش آموز 5 باشد می تواند در این جدول دارای 3 رکورد باشد که نشان دهنده این است که او دارای سه درس است. و همچنین دانش اموز 7 دارای 2 درس است.
0- آی دی
1- آی دی دانش آموز
2- آی دی درس
مثلا:
رکورد - آی دی دانش آموز - آی دی درس
1 5 6
2 5 3
3 5 2
4 7 3
5 7 5
یک جدول برای کاربران که قرار است به این دانش آموزان امتیاز بدهند.
0- آی دی
1- نام کاربری
یک جدول نهایی نیز برای امتیاز ها. امتیاز ها یا مثبت هستند یا منفی. و ترجمه این جدول این است که مثلا 40 کاربر به دانش اموز شماره 5 در درس شماره 4 امتیاز مثبت داده اند و 12 نفر امتیاز منفی. به این صورت:
0- آی دی
1- امتیاز (مثبت یا منفی)
2- آی دی دانش آموز
3- آی دی درس
4- آی دی کاربر
مثلا:
رکورد - امتیاز - دانش آموز - درس کاربر
1 + 5 2 6
2 + 5 2 7
3 - 5 2 9
4 + 5 3 6
5 - 5 2 5
یعنی: کاربر 6 در درس 2 به دانش آموز 5 مثبت داده است ولی کاربر 9 به او منفی داده است.
این روش به نظر من رسید، ولی حدس می زنم که بعد از گذشت زمان جدول ها حجم بالایی را اشغال کنند و هنگام بازخوانی دچار مشکل شوند. مخصوصا جدول امتیاز دهی بیشترین رکورد را خواهد داشت. اگر راه بهتری برای اجرای این طرح وجود دارد لطفا مرا راهنمایی کنید.