پشتیبانی: 09131253620
ارتباط با ما
تلگرام: 09131253620


یکی دیگر از خدمات ما طراحی وب سایتهای واکنشگرا یا Responsive با کیفیت بالا می باشد. برای طراحی این وب سایتها از تکنولوژیهای روز دنیا استفاده می شود.


       
صفحه اصلی  |  فروشگاه ما  |  استخدام  |  نرم افزار مدیریت برنامه غذایی رستوران ها  |  seo تضمینی اصفهان  |  ثبت نام  |  طراحی وب سایت در اصفهان  |  برنامه نویسی اصفهان  |  انجام پروژه های پایگاه داده SQL Server  |  انجام پروژه مهندسی نرم افزار  |  انجام پروژه های مالتی مدیا بیلدر  |  در مورد ما  |  انجام پروژه های اکسس Microsoft access  |  نمونه پروژه ها  |  ارتباط با ما  |  اخبار و مقاله  |  انجمن رفع اشکالات مشتریان
برجسته ترین ها
گروه های مقاله ها
HyperLink


پایگاه داده رابطه ای بخش شانزدهم تاریخ درج: ١٣٩۴/٠٩/٢۴

6- 6 گروه موجودیت ضعیف 

یک گروه موجودیت ممکن است صفات کافی برای ایجاد کلید اصلی نداشته باشد. اینچنین گروه موجودیتی، گروه موجودیت ضعیف نامیده می شود. گروه عنصری که کلید اصلی را دارا می باشد گروه موجودیت قوی نامیده می شود.
در توضیح این مطلب، به گروه موجودیتpayment توجه کنید که سه خصوصیت دارد: payment-date و payment-number و payment-amount . معمولاً تعداد پرداخت ها اعداد ترتیبی هستند که از یک شروع می شوند و جداگانه برای هر وام یک عدد ایجاد می شود. بنابراین اگرچه هر موجودیت payment مجزا و جداست اما شاید پرداخت ها برای وام های مختلف تعداد پرداختی یکسانی داشته باشد. بنابراین گروه کلید اصلی ندارد و یک گروه موجودیت ضعیف است.
یک گروه موجودیت ضعیف برای معنی دار و موثر شدن، باید به گروه موجودیت دیگری به نام شناسه یا گروه موجودیت مالک مرتبط شود. باید هر موجودیت ضعیف با یک موجودیت شناسه مرتبط شود، به عبارت دیگر موجودیت ضعیف، وجود وابسته به گروه موجودیت شناسه نامیده می شود. طبق این نظر، موجودیت شناسه، مالکیت، گروه موجودیت ضعیفی را که شناسایی می کند، به عهده دارد. رابطه ای که گروه موجودیت ضعیف به گروه موجودیت شناسه مرتبط می کند رابطه شناسایی نامیده می شود. رابطه شناسه از گروه موجودیت ضعیف به گروه موجودیت شناسه چند به یک است مشارکت گروه موجودیت ضعیف در رابطه، کامل و همه جانبه است.
در مثال ما، گروه موجودیت شناسه برای payment ، loan است و یک رابطه loan- payment که گروههای payment را با گروههای loan منطبق و با آنها مرتبط می سازد، رابطه شناسه است.
اگرچه یک گروه موجودیت ضعیف کلید اولیه ندارد با این حال نیاز به وسیله تشخیصی در بین آن گروههایی دارد که در گروه موجودیت ضعیف، وابسته به یک موجودیت قوی هستند. شاخص یک گروه موجودیت ضعیف، گروهی از صفات است که امکان ایجاد این تفاوت ها را بوجود می آورند. برای مثال شاخص گروه موجودیت ضعیف payment ، صفت payment-number است، زیرا برای هر وام، یک شماره پرداخت خاص، نشانگر یک پرداخت برای آن وام است. همچنین شاخص یک گروه موجودیت ضعیف کلید ضعیف  گروه موجودیت نامیده می شود.
کلید اولیه یک گروه موجودیت ضعیف به وسیله کلید اولیه گروه موجودیت شناسه همراه شاخص گروه موجودیت ضعیف شکل می گیرد. در مورد گروه موجودیت payment کلید اولیه عبارتند از : 
{ payment-number وnumber loan- } که number loan- ، کلید اولیه گروه موجودی شناسه است که loan   نامیده می شود و payment-number نشان دهنده گروههای payment در همان وام است.
گروه رابطه شناسه نباید صفات توصیفی داشته باشند زیرا هر صفت مورد نیاز رامی توان با گروه موجودیت ضعیف مرتبط ساخت. (به مبحث تبدیل صفات گروه رابطه به گروههای موجودیت در بخش   6- 3- 1 توجه کنید) 
یک گروه موجودیت ضعیف به جای اینکه در رابطه شناسه شرکت کنند می توانند در رابطه ها شرکت کنند. برای مثال موجودیتpayment می توانست دریک رابطه همراه با گروه موجودیت account شرکت کند که حسابی را مشخص می کند که پرداخت از آن به وجود آمده است . یک گروه موجودیت ضعیف امکان داردکه به عنوان مالک دریک رابطه شناسایی در کنار گروه موجودیت ضعیف دیگری شرکت کند. همچنین ممکن است که یک گروه موجودیت ضعیف یا بیش از یک گروه موجودیت شناسه داشته باشیم در این حالت یک گروه ضعیف خاص به وسیله ترکیبی از موجودیت ها، یکی از گروه موجودیت شناسه مشخص می شود. کلید اولیه گروه موجودیت ضعیف شامل ترکیبی از کلید های اولیه گروههای موجودیت شناسه بعلاوه شاخص موجودیت ضعیف است.
در نمودار E-R مستطیل با خطوط دور دوتایی، یک گروه موجودیت ضعیف را نشان می دهد و لوزی با خطوط محیطی دوتایی هم رابطه شناسایی مشابه را نشان می دهد. درشکل6- 19، گروه موجودیت ضعیف payment به گروه موجودیت قوی loan بوسیله رابطه loan- payment وابسته است.
همچنین این شکل کاربرد خط های دوبل را برای مشخص کردن مشارکت کامل نشان می دهد. مشارکت گروه موجودیت (ضعیف) payment در رابطه loan- payment کامل است که این امر بدین معنی است که هر پرداخت باید بوسیله loan- payment به بعضی وام ها مرتبط شود. بالاخره، فلش loan- payment به loan نشان می دهد که هر پرداخت فقط برای یک وام است. همچنین شاخص یک گروه موجودیت ضعیف با خط زیر آن مشخص می شود. اما به صورت خط چین.
در بعضی موارد، طراح پایگاه داده، ممکن است که گروه موجودیت ضعیفی مثل یک صفت ترکیبی چند رقمی از گروه موجودیت مالک را بیان کند. در مثال ما، این جایگزین نیاز دارد که گروه موجودیت loan یک صفت ترکیبی و چند رقمی payment شاملpayment-number، payment-date و payment-amount صفات کمی داشته باشد، ممکن است به صورت مناسب تری مدل سازی شود. برعکس فعالیت یک گروه موجودیت ضعیف به نحو بهتری موقعیتی را مدل سازی می کند که درآن، بجای رابطه تشخیصی در روابط شرکت می کند ونیز گروه موجودیت چندین صفت دارد.
به عنوان نمونه دیگر از یک گروه موجودیت را که می توان به عنوان یک گروه موجودیت ضعیف مدل سازی کرد. به مواد پیشنهادی یک دوره در یک دانشگاه توجه کنید. همان دوره احتمالاً در ترم های 
 شکل 6-19 نمودار E-R برای یک گروه موجودیت ضعیف
شکل 6-19 نمودار E-R برای یک گروه موجودیت ضعیف

مختلف ارائه می شود و در یک ترم ممکن است چند بخش برای آن دوره وجود داشته باشد. بنابراین می توان موجودیت course-offering یعنی موجود وابسته در course را ایجاد کرد. مواد پیشنهادی مختلف این دوره، بوسیله یک ترم  و شماره بخش  مشخص می شوند که این دو یک کلید اولیه را ایجاد نمی کنند بلکه یک شاخص را ایجاد می کنند.

6- 7 ویژگیهای E-R گسترده
اگر چه مفاهیم اصلی E-R اکثر ویژگی های پایگاه داده را می تواند مدل سازی کند، اما ممکن است برخی از جنبه های یک پایگاه داده، بوسیله گسترش مدل اصلی E-R، به صورت مناسب تری بیان شوند. در این بخش، در مورد ویژگیهای E-R بسط داده شده بحث می کنیم که عبارتند از ویژه کاری – عمومی سازی، گروههای موجودیت کوچکتر و بزرگتر، صفات وراثتی و ترکیب.


6- 7- 1 ویژه کاری 
ممکن است یک گروه موجودیت شامل زیر گروههایی باشد که از بعضی جهات با دیگر اعضای گروه متفاوت هستند. برای مثال شاید اعضای یک گروه کوچکتر در داخل یک گروه موجودیت، صفاتی داشته باشند که با همه اعضای آن گروه موجودیت مشترک نباشد. مدل E-R، شیوه ای را برای ارائه این  زیر گروههای متفاوت فراهم می کند.
به عنوان یک مثال به گروه موجودیت person با صفات person-id و name و street و city توجه کنید. یک شخص ممکن است به عنوان یکی از موارد زیر طبقه بندی شود.
مشتری 
کارمند
هر کدام از این دو نوع توسط گروهی از صفات توصیف می شوند که شامل تمام صفات گروه موجودیت person به اضافه خصوصیات احتمالاً اضافی می باشد. به عنوان مثال، امکان دارد گروههای customer مجدداً توسط یک صفت credit-rating توصیف شود در صورتیکه گروههای customer احتمالاً با صفت salary توصیف می شود. فرایند طراحی دسته های کوچکتر در داخل یک گروه موجودیت، ویژه کاری نامیده می شود. ویژه کاری یک person این امکان را به ما می دهد که اشخاص را براساس اینکه کارمند هستند یا مشتری، یک کارمند، هر دوی اینها یا هیچ کدام از این دو باشد. به عنوان یک مثال دیگر، فرض کنید بانکی مایل است حسابهای خود را به دو دسته تقسیم کند: حساب جاری و حساب پس انداز. 
حساب پس انداز نیاز به کمترین تراز دارد، اما بانک ممکن است نرخ سود متفاوتی را برای افراد مختلف قرار دهد و نرخ مناسب تری را برای مشتری های خاص ارائه دهد. حساب جاری، نرخ سود ثابتی دارد اما تسهیلات برداشت بیش از موجودی ارائه می کند. مقدار برداشت بیش از موجودی در یک حساب جاری باید ثبت شود. هر کدام از این نوع حساب ها، توسط گروهی از خصوصیات توصیف می شود که شامل همه صفات گروه موجودیت account به اضافه صفات اضافی دیگر است.
بانک دو ویژه کاری برای account به نام (saving-account) و (checking-account)   می تواند ایجاد کند. همانگونه که پیشتر دیدیم موجودیت حساب توسط صفات account-number و balance توصیف می شود. گروه موجودیت (saving-account)، تمام صفات account و یک صفت اضافی interest-rate را دارد. گروه موجودیت (checking-account) همه صفات account و یک خصوصیت اضافی overdraft-account دارد.
با کاربرد مکرر ویژه کاری می توان برنامه طرح را بهبود بخشید. برای مثال کارمندان بانک ممکن است مجددا به صورت زیر تقسیم بندی می شوند.
مدیر 
متصدی 
منشی 
هر کدام از این کارمندان با یک گروه صفات توصیف می شوند که شامل همه صفات گروه موجودیت employee به اضافه صفات اضافی دیگر می شوند، برای مثال احتمالاً موجودیت officer با صفت officer-numberو موجودیت teller با صفات (station-number) وhours-per-week و موجودیت secretary با صفت hours-per-week توصیف می شوند. مجدداً، موجودیت secretary ممکن است در یک رابطهsecretary-for شرکت کند که نشان می دهد کدام یک از کارمندان منشی دارد.
شکل 6-20 عمومی سازی و ویژه کاری 
شکل 6-20 عمومی سازی و ویژه کاری

یک گروه موجودیت ممکن است با بیش از یک ویژگی تشخیصی، ویژه کاری شوند. در مثال ما، ویژگی تشخیصی در بین موجودیت کارمند، شغلی است که کارمند انجام می دهد. ویژه کاری دیگر       می تواند براین اساس باشد که شخص، کارمند قراردادی است یا کارمند رسمی که این امر باعث ایجاد گروههای موجودیت (temporary-employee) و (permanent-employee) می شود. زمانیکه بیش از یک ویژه کاری در یک گروه موجودیت ایجاد شود، یک موجودیت خاص ممکن است به چند ویژه کاری متعلق باشد. برای مثال یک کارمند خاص ممکن است یک کارمند قراردادی باشد که منشی است. در رابطه با نمودار E-R، طبق شکل 6- 20 با مثلثی به نام ISA نشان داده می شود. برچسب ISA نشانه          « است یک» است و به عنوان مثال نشان می دهد که یک مشتری « است یک» شخص، همچنین رابطه ISA، رابطه ما فوق گروه، زیر گروه نامیده می شود. گروههای موجودیت بزرگتر و کوچکتر با عنوان گروههای موجودیت منظم توصیف می شود- به عبارت دیگر اشکال مربع نام گروه موجودیت را در خود دارند.

6- 7- 2 عمومی سازی  
حرکت از یک گروه موجودیت اولیه به سطوح پی درپی زیر گروههای موجودیت نشان دهنده فرایند طراحی بالا به پایین است که تفاوتها را آشکار می سازد. همچنین ممکن است فرایند طراحی ناشی از حالت پایین به بالا باشد که چندین گروه موجودیت براساس ویژگیهای مشترک در یک گروه موجودیت سطح بالا ترکیب می شوند. طراح پایگاه داده، احتمالاً گروه موجودیت customer را با صفات(customer-id) و (customer-number) و (customer-street) و (customer-city) و credit-rating و نیز گروه موجودیت employee را با صفات employee-id، employee-name، employee-street، employee-city، employee-salary مشخص می کند.
شباهت های بسیاری بین گروه موجودیت customer و گروه موجودیت employee وجود دارد از این جهت که چندین صفت آنها، از نظر مفهومی در هر گروه یکسان هستند که عبارتند از: خصوصیات شماره شناسایی، نام، خیابان و شهر. این مشترکات رامی توان با عمومی سازی بیان کرد که یک رابطه داخلی است که بین یک گروه موجودیت بزرگتر و یک یا چند گروه موجودیت کوچکتر وجود دارد.در مثال ما person گروه موجودیت بزرگتر است و  customerو employee، گروه موجودیت کوچکتر هستند. در این مورد صفاتی که از نظر مفهومی یکسان هستند در دو گروه موجودیت کوچک، اسامی مختلفی دارد. برای ایجاد عمومی سازی باید به صفات یک نام مشترک داد و آن را با گروه موجودیت بزرگتر person نشان داد. همانگونه در مثالی در بخش 6- 7 -1 دیدیم، نام های صفات person-id وname و street و city رامی توان استفاده کرد.
همچنین ممکن است گروههای موجودیت کوچکتر به ترتیب با اصطلاح super class ، subclass مشخص می شوند. گروه موجودیت  person، super class وcustomer و employee از نوع subclass هستند. 
عمومی سازی در همه اهداف عملی برعکس ساده ای از ویژه کاری است. تاکیدی از هر دو فرایند را برای طراحی برنامه E-R دریک پروژه به کار می بریم. درمورد خود نمودار E-R، ما تفاوتی بین        ویژه کاری و عموی سازی قائل نمی شویم. در حالیکه برنامه طرح، کاربرد پایگاه داده و الزامات کاربر آنرا بطور کامل بیان می کند، سطوح جدیدی از ارائه موجودیت مشخص می شود (ویژه کاری) یا ترکیب می شود. (عمومی سازی) تفاوت این دو روش احتمالاً بوسیله نقطه شروع و هدف کلی آنها مشخص می شود.
ویژه کاری ناشی از یک گروه موجودیت منفرد است و با ایجاد گروههای موجودیت کوچکتر مجزا بر تفاوتها در بین تفاوتها در بین موجودیت های داخل گروه تاکید می کند. این گروههای موجودیت کوچکتر ممکن است صفاتی داشته باشند و یا در روابطی شرکت کنند که مربوط به همه موجودیت ها در گروه موجودیت بزرگتر نیست. در حقیقت دلیلی که یک طراح از ویژه کاری استفاده می کند ارائه این چنین ویژگیهای مجزا واضح است. اگر customer و employee صفاتی را که موجودیت های person ندارد، دارا نیستند و یا در روابط مختلفی که مربوط به person است شرکت نکند، نیازی به ویژه کاری گروه موجودیت person نیست.
عمومی سازی از پذیرش این امر ناشی می شود که تعدادی از گروههای موجودیت ویژگیهای مشترکی دارند (به عبارت دیگر، آنها با صفات یکسانی توصیف می شوند و در گروههای رابطه یکسانی شرکت می کنند.) عمومی سازی، این گروههای موجودیت را براساس ویژگیهای مشترک در یک گروه موجودیت بزرگتر قرار می دهد. عمومی سازی برای تاکید بر تشابهات در بین گروههای موجودیت کوچکتر و پوشاندن اختلافات به کار می رود و از این جهت که ویژگیهای مشترک تکرار نمی شوند، امکان ارائه موثری را به ما می دهد.

تگها: پایگاه داده   پایگاه داده رابطه ای   جبر رابطه ای   حساب رابطه ای   زبان های رابطه ای   
 

HyperLink

ارسال نظر در مورد این مطلب
نام :  
آدرس ایمیل :  
متن پیام :  
کد امنیتی :  
   
   
رئیس بزرگ 1394/12/08

سلام. جریمه های دیرکرد ، یا امتیازات بازپرداخت سریع وام ، ضامنهای وام، تاریخ بندی اقساط وام و . . .
mohadeseh 1394/12/03

سلام جز موجودیت اقساط برای وام موجودیت ضعیف دیگه ای میشه بهم بگید
 
این مطلب را به اشتراک بگذارید: