PDA

View Full Version : حرفه ای: آیا طراحی جداول به این شکل صحیح است؟



mmbguide
چهارشنبه 01 آبان 1392, 15:29 عصر
سلام به همه

فرض کنیم یک جدول پرسنلی داریم که 1000 پرسنل در آن تعریف شده اند. فرض دوم اینه که هر پرسنل ممکن از 1 تا 10 شماره تلفن داشته باشه. آیا ایجاد 10 فیلد شماره تلفن در جدول پرسنلی عقلانیه یا اینکه یک جدول شماره تلفن بسازیم و اون رو به جدول پرسنلی لینک کنیم؟ (هم از نظر اصول طراحی بانک اطلاعاتی و هم از نظر فضایی که مکن است اشغال بشه توضیح بدید)

ممنون

CannibalCorpse
چهارشنبه 01 آبان 1392, 15:40 عصر
اصولی ترین راهی که وجود داره این هست :
دو تا جدول نیاز داریم
Users
و
UsersPhoneNumbers

---------------------
که

UsersPhoneNumbers :
Id
UserId
UserNumber
ContactType
--------------------
va UserIdie Jadvane UserPhoneNumbers Join Mishe be Id e jadvale Users

در مجموع پیشبینی 10 فیلد شماهر تلفن بدلیل اشغال فضای بیهوده منطقی به نظر نمیاد.
در روشی که عرض کردم خدمتتون هر کاربر به تعداد شماره های موجودش فضا اشغال میکنه و مزیت این روش این هست که شما نوع شماره (موبایل، خانه، محل کار و ...) را هم ذخیره دارید.

hasanhzd
پنج شنبه 02 آبان 1392, 17:24 عصر
درود
در روش دوستمون اگه یکی 11 تا شماره داشت مشکلی پیش نمیاد

mfungroup
پنج شنبه 02 آبان 1392, 17:36 عصر
به نظر من برای شماره تلفن یه فایل متنی با 150 کاراکتر تو جدول اصلی بذار
بعد شماره تلفن هارو با علام ، یا مثلا - یا _ جدا کن مثل :
0912000000 - 0958251151 - +96587452 - +12568874
بعد وقتی همشو گرفتی با تابع explod (تو php.net آموزشش هست) میتونی یه آرایه از شماره تلفن ها داشته باشی