PDA

View Full Version : حذف تمام رکوردهای دارای آی دی مشخص



korosh00
پنج شنبه 18 اردیبهشت 1393, 23:55 عصر
سلام
من می خوام تمام رکوردهای دارای کد مثلا 100 حذف شوند از چه دستوری استفاده کنم .
مشکل این دستور اینه فقط یکی از رکوردهای دارای کد 100 را حذف می کند از جدول !!!!!




con.Open();
s2 = "select *from kharjk where id=" + label5.Text + "";
da = new OleDbDataAdapter(s2, con);
ds.Clear();
da.Fill(ds, "kharjk");
int i;
int count;
count = ds.Tables["kharjk"].Rows.Count - 1;
for (i = 0; i <= count; i++)
{
dr = ds.Tables["kharjk"].Rows[0];
dr.Delete();
}
cb = new OleDbCommandBuilder(da);
da = cb.DataAdapter;
da.Update(ds, "kharjk");

parvizwpf
جمعه 19 اردیبهشت 1393, 00:28 صبح
آیا سمت دیتابیس میخواهید پاک بشند یا از کنترلهای نمایشی مثل گرید در فرم؟

korosh00
جمعه 19 اردیبهشت 1393, 09:47 صبح
حذف رکوردها از دیتابیس !!!

MILAD1992
جمعه 19 اردیبهشت 1393, 09:59 صبح
اگر دیتابیس شما SQL هست ، می تونین خیلی راحت یه پروسجور مثل زیر بنویسین و کارتون رو انجام میده :
DELETE FROM TABLE WHERE CODE = 100
جای TABLE ، اسم جدولتون رو بذارین . . .

korosh00
جمعه 19 اردیبهشت 1393, 10:52 صبح
دیتابیس اکسس هستش و کد را کاملتر بگذارید ! نیاز به حلقه نیست ؟

danialafshari
جمعه 19 اردیبهشت 1393, 18:57 عصر
دیتابیس اکسس هستش و کد را کاملتر بگذارید ! نیاز به حلقه نیست ؟

فکر کنم شما دو جدول دارید که مثلاً کد یک فاکتور 100 هست و این فاکتور اقلامی دارد که nتا هست حالا می خواید اگر این فاکتور حذف شد اقلام (ریزه فاکتور) هم حذف شود. درسته؟
برای این کار شما یک فیلد در ریزه فاکتور دارید که کد فاکتور اصلی رو ذخیره می کنه شما میاید where 100 رو در این جدول پاک می کنید بعد where 100 رو در جدول اصلی پاک می کنید یعنی 2 تا delete.
موفق باشید