crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )


  Ответ в PyQT, PostgreSQL и верхний регистр в именах
Введите ваше имя
Подтвердите код

Введите в поле код из 6 символов, отображенных в виде изображения. Если вы не можете прочитать код с изображения, нажмите на изображение для генерации нового кода.
 

Опции сообщения
 Включить смайлы?
Иконки сообщения
(Опционально)
                                
                                
  [ Без иконки ]
 


Последние 10 сообщений [ в обратном порядке ]
Litkevich Yuriy Дата 29.11.2008, 7:59
 
Цитата(g00d @ 29.11.2008, 8:21) *
Функция settable по-ходу по умолчанию преобразует полученную строку к нижнему регистру перед тем как отдать базе.
не знаю как работает в Питоне, но в Qt (С++) такого нет, как выяснилось (методом хождения по граблям) эта функция обрамляет в кавычки имя таблицы, возможно у тебя после записи:
setTable("\"UMUAcessManagement\".documents");
получается такое имя:
""UMUAcessManagement".documents"

вобще имя сточкой - странное, на мой взгляд
g00d Дата 29.11.2008, 5:21
  model = QtSql.QSqlTableModel();
model.setTable("\"UMUAcessManagement\".documents");
model.select()

Помогите, нигде не могу найти ответ, уже практически отчаялся его найти. Может хоть подскажите где искать.
Проблема следующая. В базе на Посттгресе используются именования схемы разнорегистровыми символами. Для сохранения регистра там в Постргресе используется экранирование строки кавычками. Функция settable по-ходу по умолчанию преобразует полученную строку к нижнему регистру перед тем как отдать базе. Насколько я понимаю логику работы, то settable приводит строку из примера к виду \"umuacessmanagement\".documents

Есть вариант с setQuery, но хотелось бы с этим разобраться
Просмотр темы полностью (откроется в новом окне)
RSS Текстовая версия Сейчас: 28.4.2024, 5:20