PDA

View Full Version : مشکل در حذف از DGV



metallica
سه شنبه 17 خرداد 1390, 14:55 عصر
سلام
من تازه کارم فردا هم باید این پروژه رو تحویل بدم!3 روزه خودمو کشتم هیچی نفهمیدم!تو این دانشگاه آزاد مگه چیزی یاد آدم میدن!!
خلاصه که ممنون میشم بگید مشکل این قسمت کد چیه!
توی یک DGV جدول باین شده و باید با کلیک روی Name و زدن Delete سطر مورد نظر پاک بشه!




public partial class Delete : Form
{
string strCon, strSql;
DataSet ds = new DataSet();
OleDbConnection Con = new OleDbConnection();
OleDbDataAdapter da = new OleDbDataAdapter();




private void button1_ِDelete(object sender, EventArgs e)
{
strCon = "Provider=Microsoft.jet.OLEDB.4.0;" + "Data Source=D:\\man.mdb";
Con = new OleDbConnection(strCon);
Con.Open();
strSql = "Delete From c Where Name=";
da = new OleDbDataAdapter(strSql, Con);
da.Fill(ds,"c");
ds.Clear();
MessageBox.Show("Deleted", "Delete");

حذف نمیشه آقا!!چیکار کنم؟!
اگه چرت و پرت نوشتم دمتون گرم یکی این کد حذف کردن واسم بنویسه اینجا!
Sql هم نه!اکسس!
با تشکر!

B.I.O.H.A.Z.A.R.D
سه شنبه 17 خرداد 1390, 15:18 عصر
سلام.
داداش کد زیر رو تست کن ببین مشکلت حل میشه: البته یه لیبل داریم به نام label1 که بایند شده به جدول (در اینجا فیلد Name از جدول سی) اگه توی انجام این کار مشکل داشتید بگید.

private void button1_ِDelete(object sender, EventArgs e)
{
strCon = "Provider=Microsoft.jet.OLEDB.4.0;" + "Data Source=D:\\man.mdb";
Con = new OleDbConnection(strCon);
Con.Open();
OleDbCommand OleCMD = new OleDbCommand();
OleCMD.CommandText = "Delete From [c] Where Name='" + label1.Text + "'";
OleCMD.Connection = Con;
OleCMD.ExecuteNonQuery();

OleDbDataAdapter da = new OleDbDataAdapter("select * from [c]", Con);
DataSet ds = new DataSet();
da.Fill(ds,"c");
cBindingSource.DataSource = ds;
MessageBox.Show("Deleted", "Delete");
Con.Close();

metallica
سه شنبه 17 خرداد 1390, 15:47 عصر
آقا دمت گرم ولی نشد که بشه...!
من جای اون Label1 نوشتم Name! که تو جدول دارم!(نمیدونم کار درستی کردم یا نه!!)
اما وقتی تو DVG رو Name کلیک میکنم و Delete و میزنم پاک نمیکنه!پیغام میده Deleted اما اتفاق خاصی نمیافته!

B.I.O.H.A.Z.A.R.D
سه شنبه 17 خرداد 1390, 17:16 عصر
شما از کد ها هیچی رو پاک نکن. بذار همونطوری باشه. بعد اینکارایی که میگم رو انجام بده. یه label بنداز روی فرم (میتونی visible مربوط به این label رو false کنی که موقع اجرا دیده نشه)
بعد روی label کلیک کن، طبق عکس زیر فیلد Name از جدول c رو انتخاب کن (مربوط به دیتا بیس برنامه شما)

http://031.img98.net/out.php/i383525_1.png

http://031.img98.net/out.php/i383526_2.JPG

حالا هر سطر از دیتاگرید رو که میخواید پاک کنید انتخاب کنید و دکمه ای که برای delete کردنش ساختید رو بزنید. اگه اینم مشکل داشت کل برنامه رو بذارید تا درستش کنم.