Как в QT подключить PostgreSQL
Здравствуйте.
Пытаюсь подключить PostgreSQL 9,6. Разрядность скорей всего 32.
Компилятор MinGW32.
В pro файле дописал
INCLUDEPATH += C:/Program Files (x86)/PostgreSQL/9.6/include
LIBS+= C:/Program Files (x86)/PostgreSQL/9.6/lib/libpq.dll
В проекте срр написал
QSqlDatabase SearchDB = QSqlDatabase::addDatabase("QPSQL");
При работе выдает ошибку:
QSqlDatabase: QPSQL driver not loaded
QSqlDatabase: available drivers: QSQLITE QMYSQL QMYSQL3 QODBC QODBC3 QPSQL QPSQL7
Скажите пожалуйста как правильно подключить PostgreSQL 9,6?
2
253
Do you like it? Share on social networks!
- Last comments
- AKApril 1, 2025, 11:41 a.m.Добрый день. В данный момент работаю над проектом, где необходимо выводить звук из программы в определенное аудиоустройство (колонки, наушники, виртуальный кабель и т.д). Пишу на Qt5.12.12 поско…
- VPMarch 9, 2025, 4:14 p.m.Здравствуйте! Я устанавливал Qt6 из исходников а также Qt Creator по отдельности. Все компоненты, связанные с разработкой для Android, установлены. Кроме одного... Когда пытаюсь скомпилиров…
- ИМNov. 22, 2024, 9:51 p.m.Добрый вечер Евгений! Я сделал себе авторизацию аналогичную вашей, все работает, кроме возврата к предидущей странице. Редеректит всегда на главную, хотя в логах сервера вижу запросы на правильн…
- Now discuss on the forum
- МАApril 1, 2025, 4:21 p.m.0ff763fe-4e50-455d-a3a6-5699c243b1a5_17_44_22_1.xml
- fFeb. 15, 2025, 1:46 p.m.Подскажите, пожалуйста! Как данный класс можно дополнить, чтобы созданные объекты можно было перемещать мышкой по сцене?
- Не запускается компьютер (точнее работает блок , но сам монитор вообще жесть)В общем я ничего с интернета не скачивала в последнее время. На компе никаких левых пр…
- Вопрос решен. Узнать QModelIndex элемента на который мы перетаскиваем другой элемент, можно с помощью функции indexAt(event->position().toPoint()) представления QTreeViev вызываемой в переопр…
Непонятно, вы драйвер скачали или собирали?
Сдаётся мне, что возможно более правильный вариант собрать своим компилятором вначале его, а потом уже подключать.
оказывается новый драйвер не нужен, так работает:
https://forum.qt.io/topic/81148/cannot-install-postgresql-driver/8
С драйвером проблема решена.
Но дальше пытаюсь подключиться к базе.
На этом этапе
дебаг говорит что база открыта.
Если дальше делать подключение к таблице
то выдает ошибку:
QSqlDatabasePrivate::database: unable to open database: "could not connect to server: Connection refused (0x0000274D/10061)\n\tIs the server running on host \"localhost\" (::1) and accepting\n\tTCP/IP connections on port 5432?\ncould not connect to server: Connection refused (0x0000274D/10061)\n\tIs the server running on host \"localhost\" (127.0.0.1) and accepting\n\tTCP/IP connections on port 5432?\nQPSQL: Unable to connect"
Скажите пожалуйста, как правильно подключить эту субд?
извините ошибся, на SearchDB.open() база не открывается.
может быть setHostName нужен другой?
Насколько помню, там нужно ещё порты укзаывать, если подключение идёт к сетевой базе данных и вместо localhost нужно указать ip адрес, в вашем случае "127.0.0.1"
так вроде бы
Спасибо.
Дописал так и база открылась
Но QSqlTableModel не отображает запрашиваемую таблицу.
Это уже другой, отдельный вопрос )))
Скорее всего неправильно объявлено что-то в таблице, либо она не создана, либо неправильно читается. Смотрите вывод ошибок