• پایان فعالیت بخشهای انجمن: امکان ایجاد موضوع یا نوشته جدید برای عموم کاربران غیرفعال شده است

وراثت در SQL Server2000 چگونه پیاده سازی میشه ؟

resident

Registered User
تاریخ عضویت
5 دسامبر 2005
نوشته‌ها
96
لایک‌ها
2
سلام.
یه سوال داشتم و اون اینکه وراثت در SQL Server2000 چگونه پیاده سازی میشه ؟
مثلا فرض کنید بخشی از ERD من به این شکل باشه که Super type کارمند بشه و Sub type ها قراردادی و استخدامی. برای پیاده سازی این من سه تا جدول گرفتم. Attribute های مشترک قراردادی و استخدامی رو در کارمند قرار دادم و Attribute های غیر مشترک مربوط به هر جدول را در خود آن جدول . اما نمیدونم چی کار کنم که قراردادی و استخدامی Attribute های کارمند رو به ارث ببرند.
ممنون میشم راهنمایی ام کنید.
متشکرم.
 

H_R

مدیر بازنشسته
تاریخ عضویت
30 مارس 2005
نوشته‌ها
3,298
لایک‌ها
17
سن
42
محل سکونت
North Pole
به ارث ببرن یعنی چی ؟ مگه کلاس اند که به ارث ببره تیبل لازم نیست از چیزی ارث ببره شما یه آیدی به جدول کارمندت میدی و اطلاعات مشترکی رو که کارمند ها دارن توی اون جدول ذخیره میکنی ، اطلاعاتی که متفاوته رو هم در جدول های استخدامی و رسمی ذخیره میکنی و با اون ID به جدول کارمند ربطش میدی .

درصوتی که اطلاعات تمام کارمند ها یه جوره و فقط کایخوای مشخص کنی که کارمندت قرارداردی اه یا رسمی فقط یه جدول لازم داری که یه ستون با دیتا تایپ بیت داره که اگه مقدار 0 بود قرارداردی و اگه 1 بود رسمی اه.

کجا دیدی که وراثت رو توی SQL به کار ببرن ؟که یهو تصیمیم گرفتی این کار رو بکنی ؟؟
 

resident

Registered User
تاریخ عضویت
5 دسامبر 2005
نوشته‌ها
96
لایک‌ها
2
منظورم از وراثت اینه که Attribute های super type (کارمند) به sub type ها(استخدامی و قراردادی) به ارث میرسه.
به هر حال ممنونم که به سوالم جواب دادید.
من جدولها رو همانطور که شما فرموده بودید پیاده سازی کردم اما چه جوری اطلاعات رو از طریق Enterprise Manager یا Query Analyser وارد جداول کنیم؟
فرض کنید Attribute های جداول ما به صورت زیر باشه.
کارمند
Employee id
Name
family

استخدامی
Employee id
Yyy
.
.
.
قراردادی
Employee id
Xxx
.
.
.


از طرفی با Employee id چه کنیم؟ اصلا آیا میتونیم هردوی id های قراردادی و استخدامی رو مثلا از یک شروع کنیم یا اینکه باید دو مقدار متفاوت داشته باشند تا مشخص شود قراردادی است یا استخدامی.مثلا id قراردادی از 1 و id استخدامی از 5000 شروع شود.
 

yavari

کاربر تازه وارد
تاریخ عضویت
17 ژوئن 2006
نوشته‌ها
167
لایک‌ها
0
سلام


با Employee id چه کنیم؟ اصلا آیا میتونیم هردوی id های قراردادی و استخدامی رو مثلا از یک شروع کنیم یا اینکه باید دو مقدار متفاوت داشته باشند تا مشخص شود قراردادی است یا استخدامی.مثلا id قراردادی از 1 و id استخدامی از 5000 شروع شود.

به اصلیه اینو اضافه کن
یه ستون با دیتا تایپ بیت داره که اگه مقدار 0 بود قرارداردی و اگه 1 بود رسمی اه.

موفق باشید
 
بالا