PDA

View Full Version : سوال: Database Diagrams



me1364
شنبه 11 اردیبهشت 1389, 21:36 عصر
با سلام من در دیتا بیسم دو جدول دارم یکی جدول master و دیگری details حالا در جدولdetailsیک کلید خارجی برای جدول مستر باید بگذارم حالا سوالم اینجا این دو کلید را من در دیتابیس دیاگرام به هم متصل کردم آیا همین کافی است البته باید بگم نوع فیلد هر دو فیلد در جدولم با هم یکی است و جدول مستر را یونیک قرار دادم.وسوال دومم اینکه در برنامه ایی که بعد درست میکنم آیا نیاز هست به جدول دیتیلز هم داده بفرستم یا اینکه وقتی جدول مستر داده بگیره دیتیلز هم فیلد که رابطه داره پر میشه لطفا من را در این باره راهنمایی کنید
باتشکر

محمد سلیم آبادی
شنبه 11 اردیبهشت 1389, 22:30 عصر
در مورد سوال اول، با ایجاد ارتباط از طریق Diagram قید کلید خارجی در جدولتان ایجاد می شود. البته بعد از Save کردن دیاگرام. اگر دیگرام با موفقیت ذخیره شده همه چیز حل خواهد بود در غیر اینصورت کلید ساخته نمی شود.

در مورد سوال دوم، شفاف نیست، شما قید کلید خارجی را در جدول Details ایجاد می کنید تا داده هایی خارج از بازه ی موجود در جدول Master درج نشود، فقط همین.

me1364
شنبه 11 اردیبهشت 1389, 22:37 عصر
اگر دیگرام با موفقیت ذخیره شده همه چیز حل خواهد بود

بدون مشکل درست شد پس به گفته شما تا اینجا حل شده.


شما قید کلید خارجی را در جدول Details ایجاد می کنید تا داده هایی خارج از بازه ی موجود در جدول Master درج نشود،

دوست عزیز من درک درستی متاسفانه روی این قضیه ندارم شما آیا مثال کوچک در این زمینه دارید اینجا قرار دهید؟

محمد سلیم آبادی
شنبه 11 اردیبهشت 1389, 22:42 عصر
فلسفه ی ایجاد ارتباط بین جداول این است که داده های بانکمان را مقید کنیم و به اصطلاح فنی جامعیت داده ها را عملی کنیم.
این ارتباطات و قیود حتی می توانند وجود نداشته باشند! یعنی الزامی به استفاده از آنها نیست ولی چون ما می خواهیم 100 درصد صحت داده های بانکمان را تضمین کنیم این کار را انجام می دهیم.
یک مثال از کاربرد قید کلید خارجی برایتان می زنم. فرض کنید جدولی داریم که لیست دانشجویان را در آن ذخیره می کنیم و جدولی دیگر لیست دروس انتخابی توسط دانشجویان. حالا ما برای اینکه مانع از انتخاب دروس توسط دانشجویانی که وجود خارجی ندارند شویم یک قید ایجاد می کنیم.
حالا شما می توانید در خصیصه های مربوط به کلید خارجی (FK) خاصیت Cascade را فعال کنید. با این کار زمانی که یک دانشجو از جدول دانشجویان حذف شود تمام سطرهای مرتبط با آن در جدول دروس انتخابی نی حذف خواهد شد. شاید منظور شما این بوده باشد.