PDA

View Full Version : درج رکورد همراه با داشتن فیلد Null



R_Rajaee_Rad
دوشنبه 14 شهریور 1390, 08:47 صبح
سلام من با SP توی یکی از جداول بان عمل درج رو انجام میدم
مشکلی که دارم اینکه که یکی از فیلدها بعضی وقت ها احتمال NULL بودنش هست
حالا توی SP چه طوری اون فیلدی که بعضی وقتها احتمال NULL بودنش هست رو مشخص کنم؟

Galawij
دوشنبه 14 شهریور 1390, 09:13 صبح
براش شرط بذارید که اگر آن پارامتر ورودی مخالف NULL بود (IS NOT NULL) در دستور Insert نام فیلد را ذکر کنید، در غیر این صورت (IS NULL) در دستور Insert نام فیلد را ذکر نکنید، تا اتوماتیک NULL درج شود.

یوسف زالی
دوشنبه 14 شهریور 1390, 10:28 صبح
سلام.
اگر می خواهید به جای نال مثلا صفر بیاید از isnull استفاده کنید:
isnull(@Param, 0) -- masalan sefr
اگر فقط تشخیص براتون مهم هست:
if @Param is null
دقیقا کاری که می خواهید انجام دهید چیه؟

R_Rajaee_Rad
دوشنبه 14 شهریور 1390, 11:16 صبح
البته ببخشید حواسم نبود
این فیلدی که بعضی وقتها null هست
کلید خارجیه!
یعنی حتی اگر مقداری ناموجود از کلید اصلی توی جدول مرتبط بزنیم ---عمل درج انجام نمیشه!!

Galawij
دوشنبه 14 شهریور 1390, 12:46 عصر
یعنی حتی اگر مقداری ناموجود از کلید اصلی توی جدول مرتبط بزنیم ---عمل درج انجام نمیشه!!
خوب معلومه که SQL اجازه درج را نمی دهد، چون این عمل باعث ازبین رفتن جامعیت بانک می شه و چون قبلاً این ارتباط ها از طریق دیاگرام مشخص شده، در نتیجه اجازه درج را به کاربر نمی دهد.

یوسف زالی
سه شنبه 15 شهریور 1390, 01:24 صبح
اگر واقعا نیاز به این کار دارید ردیفی رو در جدول پدر اختصاص بدید به نال ها.مثلا کد یک.
تمام نال ها رو هم وصل کنید به یک.
در گزارشات هم فیلترش کنید.