![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
![]() |
g00d |
![]() ![]()
Сообщение
#1
|
Новичок Группа: Новичок Сообщений: 6 Регистрация: 26.6.2008 Из: Ростов-на-Дону Пользователь №: 214 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
model = QtSql.QSqlTableModel();
model.setTable("\"UMUAcessManagement\".documents"); model.select() Помогите, нигде не могу найти ответ, уже практически отчаялся его найти. Может хоть подскажите где искать. Проблема следующая. В базе на Посттгресе используются именования схемы разнорегистровыми символами. Для сохранения регистра там в Постргресе используется экранирование строки кавычками. Функция settable по-ходу по умолчанию преобразует полученную строку к нижнему регистру перед тем как отдать базе. Насколько я понимаю логику работы, то settable приводит строку из примера к виду \"umuacessmanagement\".documents Есть вариант с setQuery, но хотелось бы с этим разобраться |
|
|
Litkevich Yuriy |
![]()
Сообщение
#2
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: ![]() ![]() ![]() |
Функция settable по-ходу по умолчанию преобразует полученную строку к нижнему регистру перед тем как отдать базе. не знаю как работает в Питоне, но в Qt (С++) такого нет, как выяснилось (методом хождения по граблям) эта функция обрамляет в кавычки имя таблицы, возможно у тебя после записи:setTable("\"UMUAcessManagement\".documents"); получается такое имя: ""UMUAcessManagement".documents" вобще имя сточкой - странное, на мой взгляд |
|
|
![]() ![]() ![]() |
![]() |
|
Текстовая версия | Сейчас: 17.3.2025, 9:53 |