PDA

View Full Version : چگونگی حذف داده ای از داده های دیتابیس



salehvasaleh
شنبه 09 مرداد 1389, 20:15 عصر
فرض کنید تو دیتابیسمون از طریق سرچ یک داده ای خاص رو فراخوانی کرده ایم برای اینکه اون داده رو حذف کنیم باید چیکار کرد؟ می شه کاری کرد که بعد از انتخاب اون داده خاص که در دیتا گرید ویو قابل دیدن هست با زدن دکمه ای که می سازیم به نام دکمه حذف اون رو از دیتابیس و یدتا گرید ویو حذف کرد؟ممنون

FastCode
شنبه 09 مرداد 1389, 22:35 عصر
string[] Indexes;
ExecuteScalar("Delete from Table where [Index] in (" + string.Join(", ", Indexes) + ")");
امیدوارم درست نوشته باشم.

salehvasaleh
یک شنبه 10 مرداد 1389, 00:25 صبح
string[] Indexes;
ExecuteScalar("Delete from Table where [Index] in (" + string.Join(", ", Indexes) + ")");
امیدوارم درست نوشته باشم.
این کد رو باید برای همون دکمه حذف بنویسم؟ توضیح اضافه ای که به نظرتون بیاد نداره؟

Nahid Borna
یک شنبه 10 مرداد 1389, 10:12 صبح
دوست عزیز اول یک stored procedure برای delete بنویسی تا سطر مورد نظرتون از دیتابیس پاک شه مثل این کد:


delete from Table where rowID=@rowID1

بعد هم بیا و dt یا همون dataTable رو رفرش کن تا تغییراتی که می خوای توی دیتاگریدویو اعمال بشه:


foreach (DataRow dr1 in ((DataTable) dataGridView1.DataSource).Rows)
{
if (keys== dr1["rowID"].ToString())
{
dr1.Delete();
break;
}
}
((DataTable)dataGridview1.DataSource).AcceptChange s();

keys=آیدی سطری که می خوای از دیتاگریدویو حذف بشه.

FastCode
یک شنبه 10 مرداد 1389, 10:22 صبح
((DataTable)dataGridview1.DataSource).AcceptChange s();
کی این رو یاد شما داده؟
این کد یعنی اینکه هر تغییری تا حالا دادم بیخیالش بشو.
باید با یه DataAdapter اطلاعات ذخیره بشه.

Nahid Borna
یک شنبه 10 مرداد 1389, 10:35 صبح
کی این رو یاد شما داده؟
این کد یعنی اینکه هر تغییری تا حالا دادم بیخیالش بشو.
باید با یه DataAdapter اطلاعات ذخیره بشه.
ولی من مثل شما فکر نمیکنم مهم هم نیست که این کد رو کی به من یادداده! این کد یعنی تمام تغییراتی که تا حالا در دیتابیس اعمال شده رو dt هم بپذیره و یک رفرش انجام بده.:عصبانی: