PDA

View Full Version : مشکل در طراحی دیتابیس



DataMaster
یک شنبه 14 مرداد 1386, 14:24 عصر
سلام
من در طراحی دیتابیس به یه مشکل برخوردم . اینه که در دیتابیس Cycle به وجود میاد و این موضوع مانع استفاده از امکانات casecade update و Cascade Delete میشه. من یه توضیح مختصر در مورد موضوع میدم لطفا کمک کنید.
در یک سازمان طبقه بندی شغلی بدین صورت است که : به هر جایگاه شغلی "عنوان پست شغلی" یاد میشود و هر "عنوان پست شغلی" می تواند دارای چند "شماره پست" باشد.
مثلا عنوان پست رئیس با شماره های 100 و 101و 102 هستند
افراد در سازمان به دو دسته هستند: افرادی که فقط دارای عنوان پست هستند( که کارمندان موقتی و پیمانکارهستند) و افرادی که دارای عنوان و شماره پست هستند.
لطفا در این قسمت کمک کنید چند روزه که بدجوری گیر کردم

ممنون

Kamyar.Kimiyabeigi
یک شنبه 14 مرداد 1386, 15:53 عصر
خوب شما یک جدول عنوان پست دارین و یک جدول شماره پست هم دارین که pk هر دوی این جداول fk هستند در جدول افراد (اگر درست متوجه شده باشم) و به راحتی میتونین بین این سه جدول Relation برقرار کنین بدون اینکه cycle بوجود بیاد

DataMaster
یک شنبه 14 مرداد 1386, 16:18 عصر
خوب شما یک جدول عنوان پست دارین و یک جدول شماره پست هم دارین که pk هر دوی این جداول fk هستند در جدول افراد (اگر درست متوجه شده باشم) و به راحتی میتونین بین این سه جدول Relation برقرار کنین بدون اینکه cycle بوجود بیاد
فکر میکنم یه رابطه هم بین جداول عنوان پست و شماره پست لازم باشه که این خودش باعث به وجود آمدن Cycle میشه

Kamyar.Kimiyabeigi
یک شنبه 14 مرداد 1386, 16:25 عصر
اگر این امکان وجود داشته باشه که عنوان پستی دارای شماره پست نباشه میشه relation بین افراد و شماره پست را بداشت بجاش بین عنوان پست و شماره پست ارتباط برقرار کرد

DataMaster
یک شنبه 14 مرداد 1386, 17:43 عصر
بعضی عنوان پستها شماره ندارن , ولی اونوقت نمیشه ارتباط بین پست و شماره پست رو نادیده گرفت
مثلا بخواهیم بفهمیم یک عنوان چه شماره پستهایی داره نمی تونیم؟
اخه تمام شماره پستها توسط پرسنل گرفته نمی شن, ممکنه بعضی عنوان پستها و شماره پستها به کسی داده نشه

Kamyar.Kimiyabeigi
دوشنبه 15 مرداد 1386, 07:54 صبح
اگر از جدول واسط استفاده کنین درست بشه به این صورت که بین جداول عنوان پست و شماره پست که relation برقرار هست بعد یک جدول میگیریم که در اون کد پرسنل و کد عنوان پست قرار بگیره که به این جدول ، جدول واسط میگیم. حالا میشه به راحتی بین جدول واسط و جدول پرسنلی یک relation و بین جدول واسط و عنوان پست هم یک relation دیگه براقرار کرد بدون اینکه حلقه ایی بوجود بیاد و از طریق عنوان پست هم میتونین به شماره پست دسترسی داشته باشین. فکر کنم درست شد