PDA

View Full Version : استفاده از رابطه ها در پایگاه .لطفا نظر بدهید



shocraneh
دوشنبه 16 شهریور 1388, 11:49 صبح
لطفا نظر بدهید . به نظر من ایجاد رابطه ها بین جداول و کلید های داخلی و خارجی اصلا استفاده ای تو برنامه نویسی حرفه ای نداره
مثلا برای جلوگیری از تکرارما باید از محیط کد نویسی شرایط رو لحاظ کنیم . چون اگه لحاظ نشه و اسکیوال بیاد با در نظر گرفتن کلید
مانع از ثبت رکورد بشه یه پیغام می ده که برای کاربر اصلا خوشایند نیست پس وقتی قراره تو ویبی دات نت بررسی کنیم چه ضرورتی به استفاده از
رابطه ها داریم آیا نظرم درسته ؟؟ یا شاید دوستان از یه مزیت دیگش استفاده می کنن که ما خبر نداریم

saadi2
دوشنبه 16 شهریور 1388, 16:43 عصر
میشه بگید با کد چجوری از خاصیت on delete cascade و on update cascade استفاده کنیم؟ اگه میشه با یک مثال

mn_zandy63
دوشنبه 16 شهریور 1388, 19:10 عصر
من فکر میکنم اشتباه میکنی.
کلیدهای داخلی و خارجی کاری خیلی فراتر از چک کردن انجام میدهند. شاید او چیزی که شما میگی مثلا شامل Constraint ها بشه اما بهر حال نمیتونی ازشون بگذری. چون اون وقت وابسته به لایه های بالاتر میشه که داده های لایه پایینت ایراد نداشته باشه. اومدیم و چک نشد توی لایه های بالاترت اونوقت چی؟ هر لایه باید برای خودش مواظب بخش خودش باشه.

در مورد پروژه های حرفه ای من فکر منیکنم صد در صد عکس تفکر شماست.

اون خطاهایی هم که شما میگی خب باید Handle کنی. مثل بقیه خطاها.

محمد سلیم آبادی
دوشنبه 16 شهریور 1388, 23:20 عصر
برای جامعیت اطلاعات ما نیاز به کلید های اصلی و خارجی داریم، نیاز به قید (Constraint) و چگ (Check) داریم. همانطوری که در پست شماره 3 بیان شد ما بحث جامعیت اطلاعات را باید به لایه ی مربوطه یعنی لایه ی Data بسپاریم نه لایه های بالاتر.
در مورد داده های تکراری شما می توانید با استفاده از instead of insert trigger یا یک SP مانع از درج شده و در نتیجه پیغام خطایی نیز ارسال نمی شود یا پیغام خطای فارسی (با استفاده از دستورraiserror) ارسال شود. شما می توانید از توابع داخلی SQL مثل exists برای تشخیص وجود یا عدم وجود استفاده کنید.
و همیشه مسائل مربوط به داده ها را به خود داده ها بسپارید این کار باعث می شود کدنویسی در سطح application آسان تر شود.

davoodrm666_666
سه شنبه 17 شهریور 1388, 08:18 صبح
صدردرصد در برنامه نویسی حرفه نیاز به رابطه ها و کلید ها و قواعد داریم، بجز یکتایی داده که کلید ها ایجاد می کنند نقش های دیگری هم دارند مثلا کلید ها index هستند که برای بالا بردن سرعت واکشی داده نقش بسیار مهمی ایفا می کنند