Russian Qt Forum

Qt => Базы данных => Тема начата: Пытон от Август 20, 2015, 10:11



Название: Python, sqlite, attach и detach
Отправлено: Пытон от Август 20, 2015, 10:11
Мне понадобилось добавлять к своей основной БД дополнительную.
Я присоединил её с помощью
text = "ATTACH DATABASE dopDB as dopDB"
query = QtSql.QSqlQuery(mainConnection)
query.exec(text)
всё подключается

тут же пытаюсь её отсоединить. не делая никаких запросов к дополнительной БД
text = "DETACH DATABASE dopDB"
query.exec(text)
Получаю: database is locked, unable to fetch row

Как быть?


Название: Re: Python, sqlite, attach и detach
Отправлено: Пантер от Август 20, 2015, 10:14
http://stackoverflow.com/questions/8819840/error-when-detaching-sqlite-database-database-is-locked

Нету висящих запросов?


Название: Re: Python, sqlite, attach и detach
Отправлено: Пантер от Август 20, 2015, 10:15
Вообще, гуглить не пробовал? https://www.google.com/search?q=DETACH+DATABASE&ie=utf-8&oe=utf-8#newwindow=1&q=sqlite+detach+database+is+locked
Там много сцылок.


Название: Re: Python, sqlite, attach и detach
Отправлено: __Heaven__ от Август 20, 2015, 10:45
А там нигде ; не нужна случаем?


Название: Re: Python, sqlite, attach и detach
Отправлено: Пытон от Август 20, 2015, 11:16
Вообще, гуглить не пробовал? https://www.google.com/search?q=DETACH+DATABASE&ie=utf-8&oe=utf-8#newwindow=1&q=sqlite+detach+database+is+locked
Там много сцылок.

Естественно, пробовал. И все эти ссылки пересмотрел.

П.С. Блин! Дошло. Пора бы мне уж запомнить, что подключение к модели таблиц из sqlite, блочит всю БД. Сталкивался же уже, когда пытался удалить временную (та, что в ОЗУ создаётся) таблицу и не мог. Приходилось очищать модель от привязки к данным (причём совсем не из временной таблицы), затем заново присоединять их.

Бесит.


Название: Re: Python, sqlite, attach и detach
Отправлено: Пытон от Август 20, 2015, 11:17
А там нигде ; не нужна случаем?
В python - нет.


Название: Re: Python, sqlite, attach и detach
Отправлено: __Heaven__ от Август 20, 2015, 16:08
Я про SQL