Russian Qt Forum

Qt => Базы данных => Тема начата: i9 от Март 27, 2006, 15:01



Название: qt3 и postgres 8.1
Отправлено: i9 от Март 27, 2006, 15:01
Народ, а кто-нить работал с сабжем под виндой? Не получается дрова скомпилить - то иные каталоги инклудников, то не находит pid_t тип.

PS Сама идея взять дрова из qt4 наверное абсурдная.


Название: Re: qt3 и postgres 8.1
Отправлено: SLiDER от Март 27, 2006, 22:39
Цитата: "i9"
Народ, а кто-нить работал с сабжем под виндой? Не получается дрова скомпилить - то иные каталоги инклудников, то не находит pid_t тип.

PS Сама идея взять дрова из qt4 наверное абсурдная.


Чем компилим?
З.Ы. Дрова от четверки не пойдут.


Название: Re: qt3 и postgres 8.1
Отправлено: i9 от Март 28, 2006, 01:10
Цитата: "SLiDER"
Чем компилим?

VisualC 6-я

PS под линой-то данная связка живет, должна и под виндой жить...


Название: qt3 и postgres 8.1
Отправлено: SLiDER от Март 28, 2006, 22:39
Цитата: "i9"
Цитата: "SLiDER"
Чем компилим?

VisualC 6-я

PS под линой-то данная связка живет, должна и под виндой жить...


Гмммм. Ну pid_t это не что иное как int, и определен он в pg_config_os.h.  Можете по подробнее логи ошибок выложить?
А вообще разработчики PostgreSQL под виндой собирают его компилятором MinGW, и лишь не давно стали прикладывать к нему *.lib фалы для VS (стабы для dll) и как подозреваю под VS7. У меня в комплекте идет только libecpg.lib и libpq.lib по 15 и 25 КБ соответственно. А для сборки плагина там вроде нужно что-то еще.
З.Ы. Сей час попробую собрать версию 3.3.5, но только под VS2005 ибо другой не имею. Завтра отпишусь.

добавлено спустя:

 Как я и предполага не хватает libpqdll.lib. Но вот сдесь http://www.sbin.org/doc/pg/doc/install-win32.html описано как ее получить, завтра стяну архив с исходниками и попробую.


Название: qt3 и postgres 8.1
Отправлено: i9 от Март 29, 2006, 09:20
Цитата: "SLiDER"
Гмммм. Ну pid_t это не что иное как int, и определен он в pg_config_os.h.
Это я находил...
Цитата: "SLiDER"
Можете по подробнее логи ошибок выложить?
А вообще разработчики PostgreSQL под виндой собирают его компилятором MinGW, и лишь не давно стали прикладывать к нему *.lib фалы для VS (стабы для dll) и как подозреваю под VS7
Вообще я до линковки еще не дошел, структура путей инклудников 8.1 отличается от той, что тролтеч в примерах выложила для 7-й. Подбирая пути уперся в отсутствие strings.h, которого нет нив qt ни в postgres нив стандартных Си...
Цитата: "SLiDER"
У меня в комплекте идет только libecpg.lib и libpq.lib по 15 и 25 КБ соответственно. А для сборки плагина там вроде нужно что-то еще.
У меня так же.
PS Овечаю второй раз, т.к. первый раз отвечал вчера из под винды и ответ загадочным образом "исчез".


Название: qt3 и postgres 8.1
Отправлено: i9 от Март 31, 2006, 02:53
Я глючил, думал, что инклудники из виндовой инсталяшки должны решать проблемы, нифига они этого не делают, непонятно стало зачем они там вообще в таком случае...
Скачал полные исходники постгриса - ура, хоть компиляция проходит на ура. Проблемы стали так же в отсутсутствии libpqdll.lib. Где-то откопал, что она должна создаваться: "nmake /f win32.mak" - теперь отсутсвует shfolder.lib (в системе присутствует shfolder.dll, в исходниках имеется/создался shfolder.obj) вобщем пока ищу где таковую откопать...

добавлено спустя 5 часов 18 минут:

 Закачал SDK, т.к. там а нашлась shfolders.lib, но теперь ругается на неопознаный "символ" _SHGetFolderPath, хотя в либе он неоднократно встречается.

==============================
Building the Win32 static library...

link.exe @C:\DOCUME~1\i9\LOCALS~1\Temp\nma00816.
   Creating library .\Release\libpqdll.lib and object .\Release\libpqdll.exp
libpq.lib(fe-connect.obj) : error LNK2001: unresolved external symbol _SHGetFolderPath
.\Release\libpq.dll : fatal error LNK1120: 1 unresolved externals
==============================

Никто не подскажет чего оно хочет, почему не хавается?


Название: qt3 и postgres 8.1
Отправлено: SLiDER от Апрель 01, 2006, 21:41
Небольшое руководство по компиляции Qt версий 3.х.х с PostgreSQL plug-in с помощью MS Visual Studio 2005 (подозреваю что для других средств разработки от MS и даже для Borland С++ процесс вряд ли будет сильно отличаться).

Во-первых, нужно скачать дистрибутив самой PostgreSQL, на оффсайте (postgresql.org) есть куча зеркал на любой вкус, текущая актуальная версия 8.1.3. Если вам не нужна сама СУБД то лучше сразу скачивать пакет с исходниками, поскольку без него все равно не обойтись, так как с пакетом бинарников идет прекомпилированное SDK только для компилятора MinGW, и нужные нам библиотеки придется скомпилировать самим, благо makefile для этих дел с исходниками все-таки поставляется.

Далее инсталлируем СУБД (если нам это нужно), и распаковываем пакет исходников в любую директорию. Теперь нам нужно получить от него следующие библиотеки: libpq.dll, libpq.lib, libpqdll.lib. Для этого заходим в директорию src и говорим волшебные слова: nmake /f win32.mak (для Borland C++: make -N -DCFG=Release /f bcc32.mak). После чего Получим все что нам нужно и даже немного больше (psql.exe и pg_config.exe), ну да ладно.

Важное замечание!!! На время всех манипуляций с исходниками PostgreSQL, нужно обязательно избавится от следующих строк в файле crtdefs.h (из дистрибутива VS):

Код:
#if !defined(__midl)
_CRT_DEPRECATE_TEXT("This name was supported during some Whidbey pre-releases. Instead, use the standard name errno_t." ) typedef int errcode;
#else
 typedef int errcode;
#endif


Лучше их напрочь закомментировать, так как объявление данного типа создает конфликт имен с аналогичным из комплекта PostgreSQL. Опосля можно будет все вернуть в исходное.

Далее следует внести не большое исправление в заголовочный файл c.h (из дистрибутива postgre). Включение заголовочного файла strings.h следует исправить на следующее:

Код:
#if defined(HAVE_STRINGS_H) && !defined(_MSC_VER)
#include <strings.h>
#endif

Или вообще прибить (не велика потеря ;-) ).

После компиляции копируем нужные нам файлы куда следует или прописываем соответствующие пути и запускаем компиляцию Qt или отдельного плагина, это уж как вам самим нужно. Все должно пройти без проблем. Во всяком случае у меня получилось.

добавлено спустя 5 минут:

 
Цитата: "i9"
Никто не подскажет чего оно хочет, почему не хавается?


А Platform SDK точно для VS6? Ведь шестерка и более поздние версии VS по бинарному коду между собой не совместимы, и она не сможет слинковать либу скомпилированную, например, в VS2003. :idea:


Название: qt3 и postgres 8.1
Отправлено: i9 от Апрель 02, 2006, 03:19
Делаю: Устанавливаю visual studio 6, Qt3.3.4, Postgres 8.1(из бинарников).
Скачиваю сорцы постгриса 8.1.3.
Ставлю SDK (Если не ошибаюсь маленькая инталяшка SDK перед тем как качать с микросовтовского сайта нашла VS6 в системе). Закачивал SDK под х86, атлон и 64bit (если пробывал юзать атлоновкие, то говорило, что не тот тип проца, ;-), хотя у меня атлон. 64-ку не пробывал, думаю тоже не покатило бы, а вот х86 либы линковались)
Для получения libpq.dll, libpq.lib, libpqdll.lib использовал nmake /f win32.mak, которая ругалась на "unresolved external symbol _SHGetFolderPath", но при этом создавала libpq.lib и libpqdll.lib. длл-ку не создавала по указанной выше ошибке.
Зато при наличии либов уже удается скомпилить дрова, которые не работают :-(.

Сегодня как посплю попробую заново с изменениями в crtdefs.h и c.h файлах.

Если не затруднит, не могли бы прислать полученые дрова и libpq.dll на i9$hotbox.ru.

ЗЫ Не заметил с какого момента, но при линковке любого проекта (будь то драйвер, сам Qt или его example) дает варнинги:
Код:
LINK : warning LNK4199: /DELAYLOAD:comdlg32.dll ignored; no imports found from comdlg32.dll
LINK : warning LNK4199: /DELAYLOAD:oleaut32.dll ignored; no imports found from oleaut32.dll
LINK : warning LNK4199: /DELAYLOAD:winmm.dll ignored; no imports found from winmm.dll
LINK : warning LNK4199: /DELAYLOAD:wsock32.dll ignored; no imports found from wsock32.dll
LINK : warning LNK4199: /DELAYLOAD:winspool.dll ignored; no imports found from winspool.dll
LINK : warning LNK4199: /DELAYLOAD:opengl32.dll ignored; no imports found from opengl32.dll
Причем переустановил все, вплоть до винды - варнинги имеют место, может просто раньше не замечал.... Странно как-то...


Название: qt3 и postgres 8.1
Отправлено: SLiDER от Апрель 02, 2006, 13:12
Цитата: "i9"


Если не затруднит, не могли бы прислать полученые дрова и libpq.dll на i9$hotbox.ru.

Дрова то я вам вышлю только вряд ли они вам помогут. Я собирал на VS2005 (Qt 3.3.5, PostgreSQL 8.1.3), а у нее как я уже писал бинарники с шестеркой не совместимы. VS6 нет так что попробовать не на чем.

Цитата: "i9"

ЗЫ Не заметил с какого момента, но при линковке любого проекта (будь то драйвер, сам Qt или его example) дает варнинги:
Код:
LINK : warning LNK4199: /DELAYLOAD:comdlg32.dll ignored; no imports found from comdlg32.dll
LINK : warning LNK4199: /DELAYLOAD:oleaut32.dll ignored; no imports found from oleaut32.dll
LINK : warning LNK4199: /DELAYLOAD:winmm.dll ignored; no imports found from winmm.dll
LINK : warning LNK4199: /DELAYLOAD:wsock32.dll ignored; no imports found from wsock32.dll
LINK : warning LNK4199: /DELAYLOAD:winspool.dll ignored; no imports found from winspool.dll
LINK : warning LNK4199: /DELAYLOAD:opengl32.dll ignored; no imports found from opengl32.dll
Причем переустановил все, вплоть до винды - варнинги имеют место, может просто раньше не замечал.... Странно как-то...


С warning все просто, линкер не может найти отладочные символы для загружаемых динамических библиотек, хотя они должны быть в Platform SDK, но вы наверное их не прописали в пути линкеру. Да это все ерунда вы же не собираетесь Винду отлаживать, так что можете просто отключить их вывод, чтоб не нервировали.  :D

добавлено спустя 6 минут:

 Чёй-то у hotbox.ru опять smtp глючить, и ведь не в первый раз уже. Пойду через web-интерфейс отправлю.

добавлено спустя 8 минут:

 Уффф. Ну вроде ушло. Забирай.


Название: qt3 и postgres 8.1
Отправлено: i9 от Апрель 02, 2006, 14:11
Цитата: "SLiDER"
Дрова то я вам вышлю только вряд ли они вам помогут. Я собирал на VS2005 (Qt 3.3.5, PostgreSQL 8.1.3), а у нее как я уже писал бинарники с шестеркой не совместимы. VS6 нет так что попробовать не на чем.
А разве Qt скомпиленая под VS6 не сможет использовать dll-ку скомпиленую VS2005? Этож на подобии если я буду компилить свою прогу  VS6, которая будет юзать системные dll-ки, скомпиленые явно не с VS6. Или я ошибаюсь?
Цитата: "SLiDER"
С warning все просто, линкер не может найти отладочные символы для загружаемых динамических библиотек, хотя они должны быть в Platform SDK, но вы наверное их не прописали в пути линкеру. Да это все ерунда вы же не собираетесь Винду отлаживать, так что можете просто отключить их вывод, чтоб не нервировали.  :D
Успокоили, а то действительно смущали варнинги...
Цитата: "SLiDER"
Чёй-то у hotbox.ru опять smtp глючить, и ведь не в первый раз уже. Пойду через web-интерфейс отправлю.
 Уффф. Ну вроде ушло. Забирай.
Да, последнее время он че-то плошает...

На счет инменений в h-файлах: crtdefs.h в VS6 не нашел.
Коментирование #include <strings.h> в c.h изменений не дало.

Сейчас пытаюсь скомпилять Qt с помощью MinGW 3.4.2 - это на часы...

Если ничего так и не получится, то во второй половине след. недели буду пробывать на VS2005, пока ее нету....


Название: qt3 и postgres 8.1
Отправлено: SLiDER от Апрель 02, 2006, 14:25
Цитата: "i9"
А разве Qt скомпиленая под VS6 не сможет использовать dll-ку скомпиленую VS2005? Этож на подобии если я буду компилить свою прогу  VS6, которая будет юзать системные dll-ки, скомпиленые явно не с VS6. Или я ошибаюсь?


Тут все дело в том, что для линковки этой dll, Qt будет использовать соответствующий lib-файл, а вот тут-то, как раз, и вылезет бинарная не совместимость. Если только вы сами, средствами своей среды разработки, не создадите такой lib-файл. Честно говоря не помню есть ли в составе VS6 подобные утилиты.
З.Ы. Еще могут возникнуть проблемы совместимости из-за немного разных версий Qt, хотя вероятность этого не слишком велика.


Название: qt3 и postgres 8.1
Отправлено: i9 от Апрель 02, 2006, 14:40
Цитата: "SLiDER"
Тут все дело в том, что для линковки этой dll, Qt будет использовать соответствующий lib-файл, а вот тут-то, как раз, и вылезет бинарная не совместимость. Если только вы сами, средствами своей среды разработки, не создадите такой lib-файл. Честно говоря не помню есть ли в составе VS6 подобные утилиты.
А зачем мне линковать эту dll-ку, я ее просто кину в каталог и с проектом. Если я драйвер плагином делаю, то он ведь не линкуется... Хотя... Ладно, когда прийдет письмо (хотбокс рулит) будет видно...


Название: qt3 и postgres 8.1
Отправлено: SLiDER от Апрель 02, 2006, 14:57
Цитата: "i9"
Цитата: "SLiDER"
Тут все дело в том, что для линковки этой dll, Qt будет использовать соответствующий lib-файл, а вот тут-то, как раз, и вылезет бинарная не совместимость. Если только вы сами, средствами своей среды разработки, не создадите такой lib-файл. Честно говоря не помню есть ли в составе VS6 подобные утилиты.
А зачем мне линковать эту dll-ку, я ее просто кину в каталог и с проектом. Если я драйвер плагином делаю, то он ведь не линкуется... Хотя... Ладно, когда прийдет письмо (хотбокс рулит) будет видно...


А программу без lib-файла как компилировать будете, откуда линкеру символы таскать для линковки? В Qt, вроде бы, загрузка плагинов посредством вызова LoadLibrary не предусмотрена (судя по исходникам), а как еще по другому dll загружать?


Название: qt3 и postgres 8.1
Отправлено: i9 от Апрель 02, 2006, 15:36
Если не затруднит, вышлите еще раз драйвер, но уже на eer3$yandex.ru - боюсь на hotbox оно уже не прийдет... :(


Название: qt3 и postgres 8.1
Отправлено: SLiDER от Апрель 02, 2006, 15:43
Цитата: "i9"
Если не затруднит, вышлите еще раз драйвер, но уже на eer3$yandex.ru - боюсь на hotbox оно уже не прийдет... :(


Ушло.


Название: qt3 и postgres 8.1
Отправлено: i9 от Апрель 02, 2006, 21:51
Цитата: "SLiDER"
Ушло.
Спасибо, получил, но увы таки не работает :(...
Несколько часов компилил Qt MinGW-ом, таки докомпилилось, но с компилированием дров опять заморочки с путями/инклудами....

Наверное надо сделать паузу и пробывать копилять все на VS2005. Кстати, а он точно рабочий драйвер получается? Я не имею ввиду, чтоб Вы базу создавали и к ней конектились, хотяб qt его видит в качестве допустимых дров (имею ввиду QSqlDatabase::drivers() )?


Название: qt3 и postgres 8.1
Отправлено: SLiDER от Апрель 02, 2006, 22:32
Цитата: "i9"
Кстати, а он точно рабочий драйвер получается? Я не имею ввиду, чтоб Вы базу создавали и к ней конектились, хотяб qt его видит в качестве допустимых дров (имею ввиду QSqlDatabase::drivers() )?


Вполне работоспособный. Проверил по полной программе.


Название: qt3 и postgres 8.1
Отправлено: i9 от Апрель 10, 2006, 15:35
Таки что-то не то:

MSVC2005,
qt-win-commercial-3.3.5
postgres-8.1 (+ исходники от 8.1.3)

Коментарю в crtdefs.h
Код:
#if !defined(__midl)
_CRT_DEPRECATE_TEXT("This name was supported during some Whidbey pre-releases. Instead, use the standard name errno_t." ) typedef int errcode;
#else
typedef int errcode;
#endif
и в c.h
Код:
#if defined(HAVE_STRINGS_H)
#include <strings.h>
#endif


Компилю libpq.dll, libpq.lib и libpqdll.lib (nmake /f win32.mak), при этом мелькает кучка варнингов "cl: Command line warning D9036: use'EHsc' instead of 'GX'", "cl: Command line warning D9002: ignoring unknown option '/YX'" и куча других о повторном переобъявлении всяких символов. Ну да ладно - все собирается.

Собираю дровину:
Код:
set LIB=%LIB%;C:\psql\src\interfaces\libpq\Release
cd %QTDIR%\plugins\src\sqldrivers\psql
qmake -o Makefile "INCLUDEPATH+=C:\psql\src\include C:\psql\src\interfaces\libpq" psql.pro
nmake


Файлы дровины появляются, но из designer-а не получается сделать коннекта, моя совтина при попытке коннекта говорит "драйвер не загружен".


Название: qt3 и postgres 8.1
Отправлено: SLiDER от Апрель 10, 2006, 21:21
Цитата: "i9"
Файлы дровины появляются, но из designer-а не получается сделать коннекта, моя совтина при попытке коннекта говорит "драйвер не загружен".


А вы случаем не забыли прописать в переменную PATH пути к bin папке PostgreSQL? Очень на то похоже. А то сам PostgreSQL этого не делает.  :?


Название: qt3 и postgres 8.1
Отправлено: i9 от Апрель 10, 2006, 23:51
Ура!!!!! Наконец-то.... (таки путь к постгрису, ни в жизнь не догадался бы...)
Огромное-приогромное спасибо! :-))))


Название: qt3 и postgres 8.1
Отправлено: SLiDER от Апрель 11, 2006, 00:01
Цитата: "i9"
Ура!!!!! Наконец-то.... (таки путь к постгрису, ни в жизнь не догадался бы...)
Огромное-приогромное спасибо! :-))))


Да не за что. Рад, что вам все удалось.  :D


Название: qt3 и postgres 8.1
Отправлено: arido от Ноябрь 22, 2006, 18:51
Цитата: "SLiDER"
Для этого заходим в директорию src и говорим волшебные слова: nmake /f win32.mak (для Borland C++: make -N -DCFG=Release /f bcc32.mak). После чего Получим все что нам нужно и даже немного больше (psql.exe и pg_config.exe), ну да ладно.:idea:


Скачала исходник postgresql-8.1.4, пытаюсь провести сборку. Использую компилятор BCC5.5. Возникли следующие ошибки:
1. Error E2206 fe-connect.c 2361: Illegal character '\' (0x5c) in function parseServiceInfo
2. Error E2380 fe-connect.c 2361: Unterminated string or character constant in function parseServiceInfo
3. Error E2121 fe-connect.c 2363: Function call missing ) in function parseServiceInfo

Часть fe-connect.c:
Код:

   /*
* This could be used by any application so we can't use the binary
* location to find our config files.
*/
стр. 2360   snprintf(serviceFile, MAXPGPATH, "%s/pg_service.conf",
стр. 2361  getenv("PGSYSCONFDIR") ? getenv("PGSYSCONFDIR") : SYSCONFDIR);
стр. 2362
стр. 2363   if (service != NULL)
   {
 FILE  *f;
 char  buf[MAXBUFSIZE],
  *line;

Подскажите, что сделать, как исправить?


Название: qt3 и postgres 8.1
Отправлено: SLiDER от Ноябрь 23, 2006, 10:42
Цитата: "arido"
Цитата: "SLiDER"
Для этого заходим в директорию src и говорим волшебные слова: nmake /f win32.mak (для Borland C++: make -N -DCFG=Release /f bcc32.mak). После чего Получим все что нам нужно и даже немного больше (psql.exe и pg_config.exe), ну да ладно.:idea:


Скачала исходник postgresql-8.1.4, пытаюсь провести сборку. Использую компилятор BCC5.5. Возникли следующие ошибки:
1. Error E2206 fe-connect.c 2361: Illegal character '\' (0x5c) in function parseServiceInfo
2. Error E2380 fe-connect.c 2361: Unterminated string or character constant in function parseServiceInfo
3. Error E2121 fe-connect.c 2363: Function call missing ) in function parseServiceInfo

Часть fe-connect.c:
Код:

   /*
* This could be used by any application so we can't use the binary
* location to find our config files.
*/
стр. 2360   snprintf(serviceFile, MAXPGPATH, "%s/pg_service.conf",
стр. 2361  getenv("PGSYSCONFDIR") ? getenv("PGSYSCONFDIR") : SYSCONFDIR);
стр. 2362
стр. 2363   if (service != NULL)
   {
 FILE  *f;
 char  buf[MAXBUFSIZE],
  *line;

Подскажите, что сделать, как исправить?


Ох уж мне этот BCC ... первое что приходит в голову, для начала, попробуйте функцию из строк 2360 и 2361 объединить в одну строку. Хотя, похоже, что ему (BCC) какойто макрос не развернуть ни как. Пойду посмотрю исходники.


Название: Re: qt3 и postgres 8.1
Отправлено: Примерный ученик от Февраль 29, 2008, 11:19
Таки что-то не то:

MSVC2005,
qt-win-commercial-3.3.5
postgres-8.1 (+ исходники от 8.1.3)

Коментарю в crtdefs.h
Код:
#if !defined(__midl)
_CRT_DEPRECATE_TEXT("This name was supported during some Whidbey pre-releases. Instead, use the standard name errno_t." ) typedef int errcode;
#else
typedef int errcode;
#endif
и в c.h
Код:
#if defined(HAVE_STRINGS_H)
#include <strings.h>
#endif

Компилю libpq.dll, libpq.lib и libpqdll.lib (nmake /f win32.mak), при этом мелькает кучка варнингов "cl: Command line warning D9036: use'EHsc' instead of 'GX'", "cl: Command line warning D9002: ignoring unknown option '/YX'" и куча других о повторном переобъявлении всяких символов. Ну да ладно - все собирается.

Собираю дровину:
Код:
set LIB=%LIB%;C:\psql\src\interfaces\libpq\Release
cd %QTDIR%\plugins\src\sqldrivers\psql
qmake -o Makefile "INCLUDEPATH+=C:\psql\src\include C:\psql\src\interfaces\libpq" psql.pro
nmake

Файлы дровины появляются, но из designer-а не получается сделать коннекта, моя совтина при попытке коннекта говорит "драйвер не загружен".

А у меня всеравно вылазит неразрешенная ссылка на _SHGetFolderPath ???


Название: Re: qt3 и postgres 8.1
Отправлено: Примерный ученик от Февраль 29, 2008, 23:15
Система XP Pro
Стоит VC6 SE
SDK

однако нигде нет

shfolders.dll ни shfolders.lib

Что делать? ???

Решил проблему с помощью ODBC, его драйвер создается на УРА!!!


Название: Re: qt3 и postgres 8.1
Отправлено: Примерный ученик от Сентябрь 26, 2008, 11:58
Наконец то удалось скомпилировать драйверы для PostgreSQL 8.1
Однако облом.
Из DEMO  запросы проходят, а из программы - записей QSqlQuery всегда 0.
Запрос самый примитивный

qRab->exec("SELECT razmp FROM menurazm");

Можете что либо подсказать?

При подключении к этой же базе через ODBC все нормально... ???


Название: Re: qt3 и postgres 8.1
Отправлено: Примерный ученик от Сентябрь 26, 2008, 12:20
Ежклмн...
Похоже при использовании драйвера PostgreSQL метод

qRab->numRowsAffected()

всегда возвращает 0...

Или я где то накосячил? ??? ??? ???

А как еще можно узнать число полученных записей?

Про
Код:
	j=0;
while (qRab->next()) j++;
знаю...


Название: Re: qt3 и postgres 8.1
Отправлено: Пантер от Сентябрь 26, 2008, 14:33
SELECT count() :)


Название: Re: qt3 и postgres 8.1
Отправлено: Примерный ученик от Сентябрь 26, 2008, 14:47
А это как??? ???


Название: Re: qt3 и postgres 8.1
Отправлено: Пантер от Сентябрь 26, 2008, 14:49
Код:
qRab->exec("SELECT count(razmp) FROM menurazm");
qRab->next();
int numRows=qRab->value(0).toInt();


Название: Re: qt3 и postgres 8.1
Отправлено: Примерный ученик от Октябрь 01, 2008, 21:48
Спасибо, не знал такой простой конструкции :o