Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Lock conflict on no wait [D7, FireBird]


<Lelik> ©   (2005-08-25 18:46:00) 

Здравствуйте!
Вот такая проблема! Создаю таблицу:
'CREATE TABLE GPV_CHANGES' + #13#10 +
'(' + #13#10 +
'ID             BIGINT      NOT NULL,' + #13#10 +
'TABLE_NAME     VARCHAR(50) NOT NULL,' + #13#10 +
'CHANGE_TYPE_ID INTEGER     NOT NULL,' + #13#10 +
'RECORD_ID      INTEGER     NOT NULL,' + #13#10 +
'CHANGE_TIME    TIMESTAMP   DEFAULT CURRENT_TIMESTAMP NOT NULL,' + #13#10 +
'COLUMNS_ID     INTEGER     DEFAULT 0 NOT NULL,' + #13#10 +
'PRIMARY KEY (ID),' + #13#10 +
'FOREIGN KEY (CHANGE_TYPE_ID) REFERENCES GPV_CHANGE_TYPE (ID)' + #13#10 +
')'

Родительская таблица уже создана:
'CREATE TABLE GPV_CHANGE_TYPE' + #13#10 +
'(' + #13#10 +
'ID          INTEGER     NOT NULL,' + #13#10 +
'DESCRIPTION VARCHAR(50) NOT NULL,' + #13#10 +
'PRIMARY KEY (ID),' + #13#10 +
'UNIQUE (DESCRIPTION)' + #13#10 +
')' + #13#10 +

При запуске скрипта на создание 1-й таблицы через ADOConnection.Execute(текст) выдается сообщение:
lock conflict on no wait transaction ... объект (GPV_CHANGE_TYPE) в использовании.
Всякие проверки типа InTransacton и State = stExecuting не помогают. По умолчанию в FB транзакции с параметром wait.
Подскажите в какую сторону копать :) Спасибо


Alexandr   (2005-09-02 16:41:00) [1]

это потомучто версионник


}{ander   (2005-08-27 09:51:00) [2]

Кстати говоря, сам недавно нарвался на такие грабли. Не думал, что создание внешнего ключа требует эксклюзивных прав на таблицу. Оказалось - таки да...


Desdechado   (2005-08-25 19:43:00) [3]

1. естественно, у всех пользователей все транзакции по таблице завершить
2. переподключиться самому к базе после всех этих созданий, ибо в
FB метаданные кэшируются при подключении (по-русски, ты этих таблиц не увидишь без переподключения)


P.N.P.   (2005-08-25 19:38:00) [4]

Как говорится в ошибке, кто-то использует этот объект.
Куда копать? Да никуда копать не надо, просто завершаем все
транзакции, в контексте которых используется таблица
PV_CHANGE_TYPE.


Наверх

Титульная страница Поиск, карта сайта Написать письмо