Очистка таблицы

ЧАстые Вопросы и Ответы

Модераторы: kdv, CyberMax

Ответить
gluckoff
Сообщения: 2
Зарегистрирован: 26 фев 2010, 23:20

Очистка таблицы

Сообщение gluckoff » 03 мар 2010, 23:32

FB 1.5 embedded. Читал много, искал много, ответа не нашёл... просто теряюсь уже в потоке информации.

http://www.ibase.ru/devinfo/delmany.htm - читал. сделал так:

Код: Выделить всё

  DM.IBSQLOne.SQL.Clear;
  DM.IBSQLOne.SQL.Add('DELETE FROM MAIN');
  if DM.BDTransactionMain.Active=false then DM.BDTransactionMain.StartTransaction;
  DM.IBSQLOne.ExecQuery;
  DM.BDTransactionMain.Commit;

  DM.IBSQLOne.SQL.Clear;
  DM.IBSQLOne.SQL.Add('SELECT count(*) FROM MAIN');
  if DM.BDTransactionMain.Active=false then DM.BDTransactionMain.StartTransaction;
  DM.IBSQLOne.ExecQuery;
  DM.BDTransactionMain.Commit;
  DM.IBSQLOne.Close;
Данные удалились, но размер БД остался тот же.
Параметры транзакции:
write
consistency

Какие-нибудь данные еще нужны для анализа?
Очень жду вашей помощи.

hvlad
Разработчик Firebird
Сообщения: 1244
Зарегистрирован: 21 мар 2005, 10:48

Re: Очистка таблицы

Сообщение hvlad » 04 мар 2010, 00:45

Файл БД никогда не сжимается. Освободившееся место используется повторно.

kdv
Forum Admin
Сообщения: 6595
Зарегистрирован: 25 окт 2004, 18:07

Re: Очистка таблицы

Сообщение kdv » 04 мар 2010, 12:22

просто теряюсь уже в потоке информации.
просто надо читать FAQ.
http://www.ibase.ru/ibfaq.htm#less

gluckoff
Сообщения: 2
Зарегистрирован: 26 фев 2010, 23:20

Re: Очистка таблицы

Сообщение gluckoff » 04 мар 2010, 21:52

Спасибо за объяснения и за ссылку.

Ответить