View Full Version : اگر executescalar مقدار null برگرشت داد چه باید کرد؟
Mahdi Fahmideh
چهارشنبه 19 مرداد 1384, 00:30 صبح
با سلام این مسله رو چطوری میشه کنترل کرد؟چون اگهexecutescalar چیزی برگشت نده
عمل type cast هم به خطا میخوره.
int i=(int) frmDataBaseObjects.cmd.ExecuteScalar();
Mahdavi
چهارشنبه 19 مرداد 1384, 00:39 صبح
سلام
یکی از راحترین هاش ریختن اون توی یه object و سپس مقایسه اون و استفاده از اونه :
object o = frmDataBaseObjects.cmd.ExecuteScalar();
if (o != null) int i = Convert.Toint(o);
Peyman_Ranjbar
چهارشنبه 19 مرداد 1384, 04:15 صبح
راه کم دردسر تری به نظرتون نمیرسه؟؟؟؟
Mahdi Fahmideh
چهارشنبه 19 مرداد 1384, 23:24 عصر
سپاسگزارم از لطفتون
in_the_rain
شنبه 12 خرداد 1386, 13:07 عصر
ببینید دوستان خروجی دوتا میتونه داشته باشه یکی null و یکی undefined value کسی میتونه بگه خروجی اسکالار اگه undefined باشه چه باید کرد
__H2__
شنبه 12 خرداد 1386, 13:40 عصر
سلام
خروجی ها میتوانند کلاً Null یا DBNull باشند و بهترین راه که سرعت را نگیرد همان راهی است که کاربر Mahdavi (http://www.barnamenevis.org/forum/member.php?u=84) از آن استفاده کردند.
شما میتوانید حالات فوق را تشخیص داده و مثلاً جایشان عدد صفر را قرار دهید یا خطای مناسب را نشان دهید.
PC2st
شنبه 12 خرداد 1386, 17:19 عصر
ببینید دوستان خروجی دوتا میتونه داشته باشه یکی null و یکی undefined value کسی میتونه بگه خروجی اسکالار اگه undefined باشه چه باید کرد
استفاده از Nullable Types البته برای Value Typeها مثل int ، float ، char و ... برای تعریف یک Nullable Type بعد از نوع داده، علامت ? رو قرار بدید. در اینصورت Value Type میتونه مقدار null هم داشته باشه که به معنای undefined برای int ، float یا ... خواهد بود.
SabaSabouhi
یک شنبه 13 خرداد 1386, 12:40 عصر
با سلام
مىشه این کار رو هم انجام داد:
string MyQuery = "SELECT ISNULL( Min( OrderID), 0) FROM Orders WHERE ...";
int MyOrderID = cmd.ExecuteScalar( MyQuery);
البته به شرطى که در جدول Orders مقدار صفر براى OrderID وجود نداشته باشه.
صبا صبوحى
Majid_Magsudfar
جمعه 15 آذر 1387, 14:06 عصر
سلام :چشمک:
انینجوری بنویسین بهتره:
int? i = SqlCommand.executeScaler(); // int? instead of int
:بامزه:
مهدی کرامتی
جمعه 15 آذر 1387, 14:49 عصر
بهترین کار همیشه اینه که قبل از استفاده از یک مقدار، صحت اون رو بررسی کنید.
vBulletin® v4.2.5, Copyright ©2000-1403, Jelsoft Enterprises Ltd.