PDA

View Full Version : بررسی صحت اجرای دستورات آپدیت در دیتابیس



tanha70
شنبه 19 اردیبهشت 1394, 16:00 عصر
سلام

من تو برنامه یه کویری آپدیت به سرور ارسال کردم و میخوام بفهمم که این کویری به درستی اجرا شده یا نه و تا زمانی که اجرا نشه به درستی، نمیخوام هیچ کویری دیگه ای اجرا بشه.
ممنون میشم راهنمایی بفرمایید...

محمد رضا فاتحی
شنبه 19 اردیبهشت 1394, 16:16 عصر
شما می تونید کوئری های مربوط به sql رو داخل یه تابع bool بزارید اگه درست اجرا شد true برگردونه و هنگام اجرا اگه تابع true برگردوند می تونید ادامه بدبد و اگه false بود ادمه ندید

نکته تو هنگام اجرای دستور ExecuteNonQuery می تونید مقدار بازگشتی رو داخل متغیر int برگردونید که تعداد سطرهای تغییر یافته با دستور آپدیت ، اینسرت و دیلیت رو بر می گردونه

tanha70
شنبه 19 اردیبهشت 1394, 18:01 عصر
به نطرتون این حواب میده؟



//Update statement
public bool Update(string query)
{
int result = 0;
//Open connection
if (this.OpenConnection() == true)
{
//create mysql command
MySqlCommand cmd = new MySqlCommand();
//Assign the query using CommandText
cmd.CommandText = query;
//Assign the connection using Connection
cmd.Connection = connection;


//Execute query
result = cmd.ExecuteNonQuery();


//close connection
this.CloseConnection();
}
if (result == 0)
return false;
else
return true;
}

Yanehsar
شنبه 19 اردیبهشت 1394, 21:45 عصر
سلام میتونید در تابع ExecuteNonQuery بررسی رو انجام بدید


if (cmd.ExecuteNonQuery() == 1)
{
MessageBox.Show("نام مرکز با موافقیت ثبت گردید", "ثبت");
}

محمد رضا فاتحی
یک شنبه 20 اردیبهشت 1394, 10:03 صبح
خوبه ولی اگه یه try-catch بهش اضافه کمی عالی میشه
public bool Update(string query) {
try
{
int result = 0;
//Open connection
if (this.OpenConnection() == true)
{
//create mysql command
MySqlCommand cmd = new MySqlCommand();
//Assign the query using CommandText
cmd.CommandText = query;
//Assign the connection using Connection
cmd.Connection = connection;




//Execute query
result = cmd.ExecuteNonQuery();




//close connection
this.CloseConnection();
}
if (result == 0)
return false;
else
return true;
}
catch
{
return false;
}
}