PDA

View Full Version : دستور EXISTS در سي شارپ



csharpprogramer88
دوشنبه 25 آبان 1388, 19:02 عصر
توي سي شارپ چه جوري مي تونم از دستور exist استفاده كنم بطوريكه چك كنم اطلاعاتي براي يك ستون وجود دارد يا نه .

مثلا در جدول فاكتور كد كالا برابر با تكست باكس است يا نه

تاكيد مي كنم ، تو سي شارپ چيكار بايد بكنم
كدي كه خودم نوشتم اما خطا داره

string str1 ="if exist(select code_kala_zirfactor from zirfactor where code_kala_zirfactor=dataGridView1.Rows[0].Cells[0].Value and shomare_factor_zirfactor='"+txtshomare.Text+"'";
cmd.Connection = con;
cmd.CommandText = str1;
con.Open();
cmd.ExecuteNonQuery();
con.Close();

saeedr22
دوشنبه 25 آبان 1388, 19:45 عصر
برای اینکار باید از Stored procedure استقاده کنی.
و
dataGridView1.Rows[0].Cells[0].Value
رو به عنوان پارامتر ورودی به Stored procedure بفرستی و اونجا اونو چک کنی.

sunn789
دوشنبه 25 آبان 1388, 20:36 عصر
یه کار دیگه هم تو س شارپ میتونی انجام بدی اینکه اطلاعات رو در یک DataTable ذخیره کنی بهد اطلاعات رو از داخل اون چک کی

farsoft
دوشنبه 25 آبان 1388, 22:36 عصر
دوست عزیز شما دستور sql را به صورت عادی بنویس
مثلا
select code_kala_zirfactor
from zirfactor
where code_kala_zirfactor="x" and shomare_factor_zirfactor="y"
و بعدش در زمانی که دستور cmd.ExecuteNonQuery(); را اجرا می کنی این تابع یک مقدار عددی بازگشتی دارد
می توانی با بررسی صفر نبودن مقدار باز گشتی این تابع بررسی کنی که مقداری وجود داشته یا نه

csharpprogramer88
جمعه 29 آبان 1388, 21:02 عصر
دوست عزیز شما دستور sql را به صورت عادی بنویس
مثلا
select code_kala_zirfactor
from zirfactor
where code_kala_zirfactor="x" and shomare_factor_zirfactor="y"
و بعدش در زمانی که دستور cmd.ExecuteNonQuery(); را اجرا می کنی این تابع یک مقدار عددی بازگشتی دارد
می توانی با بررسی صفر نبودن مقدار باز گشتی این تابع بررسی کنی که مقداری وجود داشته یا نه

آخه مي خوام چك كنم آيا وجود داره يا نه كه حتما بايد ifباشه

hoorfar
جمعه 29 آبان 1388, 21:13 عصر
با یک SqlDataAdaptor و یک دستور select ساده با شرطی که می خوای بنویس

و با این دستور می تونی تعداد Row های خوانده شده رو بفهمی

DataSetName.Table[0].Rows.Count
Count تعداد رکوردهای موجود با شرطی که توی دستور Select نوشتی هستش اگه برابر یک باشه یعنی یه رکورد وجود داره

در کد بالا هم جای DataSetName اسم DataSet که با SqlAdaptor پرش کردی رو بزار