مرجع تخصصی برنامه نویسان

انجمن تخصصی برنامه نویسان فارسی زبان

کاربر سایت

mansour.naydasor

عضویت از 1395/11/23

مدیریت پایگاه داده

  • سه شنبه 19 آذر 1398
  • 10:55
تشکر میکنم

با سلام و خسته نباشید:
سوال بنده این هست : ما جدول کشور، استان، شهرستان و شهر را داریم که هر کدام بصورت جدا و از طریق کلید خارجی به هم متصل هستند.
میخواییم برای یک شخص در جدول کاربران این رو ثبت کنیم : 1. آیا کلید خارجی شهر را در جدول کاربران ثبت خواهیم کرد؟ 2. آیا از جدول واسط با کلید خارجی کاربران برای ذخیره منطقه استفاده خواهیم کرد؟
اگر جواب گزینه 1 هست ؟ سوال دوم : چجوری لیست کشور ایران را بدست بیاریم ( از طریق کلید خارجی شهر) ؟ 

پاسخ های این پرسش

تعداد پاسخ ها : 2 پاسخ
کاربر سایت

AmirGhasemi

عضویت از 1392/02/25

  • چهارشنبه 20 آذر 1398
  • 07:48

سلام

هر دو گزینه ی روی میز شما، صحیح است و شما باید با توجه به شرایط محیط نسبت به انتخاب گزینه نهایی اقدام کنید

بعنوان مثال: 

شما می خواهی شهر محل تولد فرد را ذخیره کنی. خب "محل تولد" همواره یکتاست! قانون دوم طراحی دیتابیس میگهخ اگه رابطه یک به یک باشه در اغلب موارد می توان این با هم ترکیب شوند لذا شما در جدول Person  خودتون یک فیلد به نام CityID  اضافه کنید و بعنوان کلید خارجی نگهداری کنید.

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

در ضمن لطفا برای تاپیک هاتون همیشه عنوان مناسب انتخاب کنید. "مدیریت پایگاه داده" یک اسم عام است و نمی تواند منظور شما را در نگاه اول برساند لذا ممکن است دیرتر به جواب سوالتون برسید

کاربر سایت

mansour.naydasor

عضویت از 1395/11/23

  • چهارشنبه 20 آذر 1398
  • 17:50

خیلی ممنون از جواب و پیگیریتون

کاربرانی که از این پست تشکر کرده اند

هیچ کاربری تا کنون از این پست تشکر نکرده است

اگر نیاز به یک مشاور در زمینه طراحی سایت ، برنامه نویسی و بازاریابی الکترونیکی دارید

با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)