![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Удаление всех записей при помощи ADOQuery [Access]
Dyusha © (2005-02-22 18:48:00)Здравствуйте Уважаемые Мастера!!! Как удалить все записи из таблицы базы данных, используя компонент ADOQuery, перед удалением некой переменной
(s:string)надо присвоить общее количество записей в базе. Заранее благодарен….за оказанную помощь
Fin (2005-02-22 20:28:00) [1]
> XMAN ©
ну уж ежели использоватьнавигационный метод, то
конструкция типа:
while not твоя_таблица.eof do
begin
твоя_таблица.delete;
end;
наиболее предпочтительна.
Desdechado (2005-02-22 20:26:00) [2]2 XMAN
не самый лучший способ...
зачем тянуть на клиента записи, если ты их хочешь удалить? дай команду серверу, и все.
XMAN (2005-02-22 19:48:00) [3]или
n:=adoquery.recordacount;
for i:=1 to n do adoquery.delete;
XMAN (2005-02-22 19:44:00) [4]while adoquery.recordcount<>0 do
begin
adoquery.first; // эта строка может быть не обязательна
adoquery.delete;
end;
поидее должно прокатить
я удалял когдато по очередно все записи, непомню только этим способом или нет
kivadim (2005-02-22 19:36:00) [5]вернее
s:=ADOQuery1.FieldByName('kol-vo'). AsString;
kivadim (2005-02-22 19:33:00) [6]общее кол-во НЕ В БАЗЕ, а в какой-либо таблице БД можно узнать след. образом:
ADOQuery1.text:='select count(*) as kol_vo from ИМЯ_ТАБЛИЦЫ ';
ADOQuery1.Open;
присваивание переменной кол-во записей:
s:=ADOQuery1.FieldByName('kol-vo').AsInteger;
ну и удаление....
ADOQuery1.text:='delete from ИМЯ_ТАБЛИЦЫ ';
ADOQuery1.ExecSQL;
Fin (2005-02-22 19:32:00) [7]1) в переменную s:=inttostr(твоя_таблица.recordcount)
2) delete from твоя_таблица
XMAN (2005-02-22 19:24:00) [8]может есть и другие способы но я делал так:
удалял по очередно каждую строку в цикле