Russian Qt Forum

Qt => Базы данных => Тема начата: Anton от Ноябрь 04, 2005, 22:22



Название: Есть ли где поподробнее про QT и PostgreSQL
Отправлено: Anton от Ноябрь 04, 2005, 22:22
На уровне простейших приложений или tutoriala?
QT 4.0/4.0.1 Postgre 8.0/8.0.3


Название: Re: Есть ли где поподробнее про QT и PostgreSQL
Отправлено: AlexKiriukha от Ноябрь 06, 2005, 12:49
Цитата: "Anton"
На уровне простейших приложений или tutoriala?
QT 4.0/4.0.1 Postgre 8.0/8.0.3

Такого не видел, но сам сейчас разбираюсь с их взаимодействием. В принципе, Qt работает с PostgreSQL как и с любой другой базой, для которой есть драйвер. Для этого они все и затеяли.
Пока нашел 2 тонкости (возможно они есть в документации):
1. Название таблицы в программе на Qt нужно писать в нижнем регистре, хотя в PostgreSQL  написано в разных регистрах.
2. Нужно обязательно создавать PRIMARY KEY. Без него редактировать базу не удастся. Это конечно логично, но не очевидно.
На данный момент не получается затолкнуть данные в BYTEA. Хочу туда маленькие картинки ложить, а не используя BLOB.


Название: Есть ли где поподробнее про QT и PostgreSQL
Отправлено: KADABRA от Ноябрь 06, 2005, 15:42
А как с PostgreSQL 8.1 (которая пока-что RC1) дела обстоят?


Название: Есть ли где поподробнее про QT и PostgreSQL
Отправлено: AlexKiriukha от Ноябрь 07, 2005, 10:23
Опа. Я боканул. У меня PostgreSQL версии 7.4.8 :(


Название: Re: Есть ли где поподробнее про QT и PostgreSQL
Отправлено: uckpeHHeBauu от Ноябрь 07, 2005, 13:01
Цитата: "AlexKiriukha"
Цитата: "Anton"
2. Нужно обязательно создавать PRIMARY KEY. Без него редактировать базу не удастся.
только если используешь DataTable иначе все нормально


Название: Re: Есть ли где поподробнее про QT и PostgreSQL
Отправлено: AlexKiriukha от Ноябрь 08, 2005, 10:58
Цитата: "uckpeHHeBauu"
только если используешь DataTable иначе все нормально

По другому не пробовал :) Но для DataTable - это точно!


Название: Есть ли где поподробнее про QT и PostgreSQL
Отправлено: uckpeHHeBauu от Ноябрь 08, 2005, 11:49
лучше используй просто QTable функциональность выше


Название: Есть ли где поподробнее про QT и PostgreSQL
Отправлено: Evil_Genius от Ноябрь 09, 2005, 16:42
Народ, всем здрасте. Такая проблема. Есть тестовая БД, в ней одна таблица имеет поля data и time с дефолтными значениями current_data и current_time. Когда вношу данные через QSqlQuery - все ок, они заполняются. Если через QSqlCursor - то эти поля остаются пустыми, значения по умолчанию не ставятся. Почему?


Название: Есть ли где поподробнее про QT и PostgreSQL
Отправлено: uckpeHHeBauu от Ноябрь 09, 2005, 16:46
Цитата: "Evil_Genius"
Народ, всем здрасте. Такая проблема. Есть тестовая БД, в ней одна таблица имеет поля data и time с дефолтными значениями current_data и current_time. Когда вношу данные через QSqlQuery - все ок, они заполняются. Если через QSqlCursor - то эти поля остаются пустыми, значения по умолчанию не ставятся. Почему?


покажи код как через cursor заполняешь


Название: Есть ли где поподробнее про QT и PostgreSQL
Отправлено: Evil_Genius от Ноябрь 09, 2005, 18:11
Цитата: "uckpeHHeBauu"
покажи код как через cursor заполняешь


Вот это чисто пробную прожку делаю:
Код:

QSqlQuery query;
query.exec("INSERT INTO log(client,info) VALUES(1,'test')"); //нормально

 QSqlCursor cur("log");
 QSqlRecord *buffer = cur.primeInsert();
 buffer->setValue("client",1);
 buffer->setValue("info","test");
 cur.insert(); // поля date и time дефолтными значениями не заполняются