Уведомления

Группа в Telegram: @pythonsu

#1 Июль 13, 2015 14:42:49

Pluto
Зарегистрирован: 2012-05-29
Сообщения: 177
Репутация: +  1  -
Профиль   Отправить e-mail  

PyQt4. sqlite. Заблокирована временная таблица.

Создаю в одной из процедур временную таблицу:
CREATE TEMPORARY TABLE mytable AS SELECT fam, im, ot FROM anothertable

А потом не могу удалить её!
DROP TABLE IF EXISTS mytable

Получаю:
database table is locked Unable to fetch row

Кем это она заблокирована???? Временная таблица заблокирована???? Кем? Чем?

Никакие модели-представления с ней не связаны. Есть только другие запросы к этой временной таблице посредством QSql.QSqlQuery


Как-нибудь можно узнать, какой объект держит эту временную таблицу?
(с) Ничиво ни панимаю!

Отредактировано Pluto (Июль 14, 2015 09:29:20)

Офлайн

#2 Июль 14, 2015 09:05:51

Pluto
Зарегистрирован: 2012-05-29
Сообщения: 177
Репутация: +  1  -
Профиль   Отправить e-mail  

PyQt4. sqlite. Заблокирована временная таблица.

Н-да.
База была заблокирована моделью, связанной с одной из таблиц в БД. Но НЕ с этой временной таблицей! С другой таблицей, хоть и в этой же БД!!! При этом UPDATE - пожалуйста, а вот DROP ни для какой НИЗЗЯ!!! Пока модель не clear'нул.

Свинство! Эта модель - источник данных для вьюшки, которая в основном окне показывает пользователю список людей. И теперь, для того, чтобы мне поработать с временной таблицей, я должен очищать эту модель (отвязывать от данных), а потом заново заполнять! Беспредел!

Офлайн

#3 Июль 14, 2015 09:28:28

Pluto
Зарегистрирован: 2012-05-29
Сообщения: 177
Репутация: +  1  -
Профиль   Отправить e-mail  

PyQt4. sqlite. Заблокирована временная таблица.

Ну и выглядит это теперь!
Пользователь смотрит на основое окно в котором у него список людей, выбирает пункт меню “выгрузка”, появляется дополнительное окно поверх основного для работы с выгрузкой. А в основном окне, при этом, пропадает весь список, словно реестр сдуло! Остаётся пустая таблица.

Пользователя ж кондратий хватить может!!!! Он с этим списком работает. Решит, что вся его работа - коту под хвост.
Скрывать, что ли, это основное окно при выгрузке, чтоб нервы людям поберечь.

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version