Подскажите, куда дальше двигаться?
Есть alt linux Postgre server 8.3. Есть линуксовая машинка с Qt 4.7.
Делаем так:
QSqlRelationalTableModel * albumsRelation = new QSqlRelationalTableModel(0);
albumsRelation->setTable("\"Temp\".\"Temp\"");
qDebug() << albumsRelation->lastError(); //говорит следующее: QSqlError(-1, "Unable to find table "Temp"."Temp"", "")
Непонятки. Почитал соседние ветки, возможно это связанно с немного кривоватым драйвером Qt для psql.
В src\sql\drivers\psql\qsql_psql.cpp подправляем на следующее:
static QPSQLDriver::Protocol getPSQLVersion(PGconn* connection)
{
qWarning("My PostgreSQL driver.");
QPSQLDriver::Protocol serverVersion = QPSQLDriver::Version82;
Дальше все как в инструкции:
#cd /home/pavel/qtsdk-2010.05/qt/src/plugins/sqldrivers/psql/
#/home/pavel/qtsdk-2010.05/qt/bin/qmake -o Makefile "INCLUDEPATH+=/usr/include/pgsql" "LIBS+=-L/usr/lib -lpq" psql.pro
#make
Все делается без ошибок. Запускаем проект. но в окно дебага ничего не падает
. Разный регистр тоже не срабатывает.
Что теперь делать?
Неужели все кто работают с psql пишут таблицы в нижнем регистре?
PS model->setQuery("select * from \"Temp\".\"Temp\""); //работает