Бессмертная таблица!

IBX, FIBPlus, UIB, ADO, .Net и прочее-прочее-прочее, в общем все, что относится к созданию приложений, работающих с InterBase, Firebird и Yaffil - клиент-серверных, трехзвенных, консольных и т.п.

Модератор: kdv

Ответить
joolio
Сообщения: 31
Зарегистрирован: 09 июл 2005, 14:23

Бессмертная таблица!

Сообщение joolio » 13 июл 2005, 11:09

Здраствуйте!
Не получается удалить таблицу в IB чрез Дельфи. Пробовал:
IBQuery3.Close;
IBQuery3.SQL.Clear;
IBQuery3.SQL.Add('drop table temp');
IBQuery3.ExecSQL;
IBQuery3.ApplyUpdates;
fmMain.IBTransaction1.Commit;
ругается : Can not perform this operation on a closed dataset!
Не знаю в чем проблема, помогите кто может :( .
Последний раз редактировалось joolio 13 июл 2005, 11:11, всего редактировалось 1 раз.

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

Сообщение kdv » 13 июл 2005, 11:11

ApplyUpdates зачем???

joolio
Сообщения: 31
Зарегистрирован: 09 июл 2005, 14:23

Сообщение joolio » 13 июл 2005, 11:15

Ладно, убрал ApplyUpdates, но все равно ошибка, но уже другая
Unsuccesfull metadata update object TEMP is in use

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

Сообщение kdv » 13 июл 2005, 11:52

ну и прочитай сообщение-то.

joolio
Сообщения: 31
Зарегистрирован: 09 июл 2005, 14:23

Сообщение joolio » 13 июл 2005, 12:00

Прочитать то прочитал, но у меня таблица temp вообще нигде не используется. Все датасеты на эту таблицу closed, IBConsole тоже закрыт.

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

Сообщение kdv » 13 июл 2005, 12:32

если к temp в этой же транзакции были обращения, то не получится. Сделай Commit, StartTransaction, drop table temp, Commit.
Если есть еще активные коннекты, обращавшиеся к этой таблице - все равно не получится.

Dimitry Sibiryakov
Заслуженный разработчик
Сообщения: 1436
Зарегистрирован: 15 сен 2005, 09:05

Сообщение Dimitry Sibiryakov » 03 май 2007, 10:17

Знаю, что археология это нехорошо, но стартовать новую тему лень. Известен ли сообществу баг в IB7.1-IB2007, который бы все равно выдавал "object in use" даже при правильном порядке операций - commit-drop-commit в единственном коннекте? QC на CG молчит (хотя может быть я его неправильно пытаю).

Ответить