PDA

View Full Version : سوال: مشکل حذف کردن از دیتا بیس



group45
جمعه 11 دی 1388, 18:15 عصر
با سلام
1- وقتی با این کدا برنامه رو اجرا میکنم پیغام incorrect syntax nera '{' ..a میاد و خط nonquery
زرد میشه
2- اگه فقط با اون خط کامند شده برنامه اجرا بشه توی دیتا گرید ویو سطر پاک میشه ولی تو دیتابیس نه مشکل چیه؟؟؟؟؟؟؟؟؟؟؟؟
تشکر



switch (result)
{
//delete
case DialogResult.Yes:
oresult = 1;
SqlCommand com = new SqlCommand();
com.CommandText = "delete from t1 where famil=" +
dataGridView1.Rows[e.RowIndex];
com.Connection = con;
con.Open();
com.ExecuteNonQuery();
con.Close();
//dataGridView1.Rows.RemoveAt(e.RowIndex);

break;
//edit
case DialogResult.No:
oresult = 2;
break;
//cancel
case DialogResult.Cancel:
oresult = 3;
break;
}
MessageBox.Show(oresult.ToString());

com_eng_abasszadeh
جمعه 11 دی 1388, 19:14 عصر
SqlConnection con = newSqlConnection();
con.ConnectionString = ("Data Source=.\\SQLEXPRESS;AttachDbFilename=|DataDirecto ry|\\kiya.mdf;Integrated Security=True;User Instance=True");
con.Open();
SqlCommand com = newSqlCommand();
com.Connection = (con);
SqlDataAdapter d = newSqlDataAdapter();
com.CommandText = ("delete moshtari where code='" + textBox1.Text + "'");
com.ExecuteNonQuery();
MessageBox.Show(".حساب با موفقیت حذف شد");
com.CommandText = ("select * from moshtari");
d.SelectCommand = (com);
DataSet ds = newDataSet();
d.Fill(ds);
dataGridView1.DataSource = ds.Tables[0];
با این فکر کنم کارت بشه دوست عزیز

group45
شنبه 12 دی 1388, 00:03 صبح
تشکر از شما ..... ولی این هم کار می کنه و دیتا بیس رو پاک نمی کنه !!!!!!!!!
در ضمن میخوام که سطر انتخاب شده ی دیتا گرید ویو رو پاک کنه

SMRAH1
شنبه 12 دی 1388, 12:19 عصر
سلام
1) پیغام دقیق خطا چیه
2) اگر فیلد famil از نوع کاراکتری است (nchar or nvarchar ,...) باید دستور رو به این صورت بنویسی:
com.CommandText = "delete from t1 where famil=\'" +dataGridView1.Rows[e.RowIndex] + "\'";
3) یادآوری : اگر چند نام فامیلی تکراری داشته باشی ،همه اونها حذف میشه(آیا فامیل همان کلید جدول شما است؟!)
4) نام فامیل دقیقا کدام ستون است (شما یک ردیف رو بدست میارید باید حالا دقیقا مشخص کنید کدام ستون این ردیف را لازم دارید).مثلا اگر نام در ستون اول است باید نوشت:
com.CommandText = "delete from t1 where famil=\'" + dataGridView1.Rows[e.RowIndex].Cells[0].Value.ToString() + "\'";

موفق باشی