Author Topic: Подключение базы данных PostgreSQL  (Read 31200 times)

0 Members and 1 Guest are viewing this topic.

Offline Victor Snezhko

  • Jr. Member
  • **
  • Posts: 72
  • Karma: +0/-0
Подключение базы данных PostgreSQL
« Reply #20 on: November 25, 2006, 00:33:59 »
Quote from: arido
Вот результат последнего запуска make. Что теперь можно сделать?
Code: [Select]
MAKE Version 5.2  Copyright (c) 1987, 2000 Borland
    cd include
    if not exist pg_config.h copy pg_config.h.win32 pg_config.h
    cd ..
    cd interfaces\libpq
    make -N -DCFG=Release /f bcc32.mak
MAKE Version 5.2  Copyright (c) 1987, 2000 Borland
Building the Win32 DLL and Static Library...
Configuration "Release"
    brcc32.exe -l 0x409 -i'C:\Progra~1\Borland\BCC55'\include -fo".\Release\libpq.res" libpq.rc
Borland Resource Compiler  Version 5.40
Copyright (c) 1990, 1999 Inprise Corporation.  All rights reserved.
    ilink32.exe @MAKE0000.@@@
Turbo Incremental Link 5.00 Copyright (c) 1997, 2000 Borland
Error: Unresolved external '_SHGetFolderPath' referenced from D:\NATALY\POSTGRESQL-8.1.4\SRC\INTERFACES\LIBPQ\RELEASE\BLIBPQ.LIB|fe-connect

** error 2 ** deleting ".\Release\blibpq.dll"

** error 1 ** deleting ALL
Ух уж этот борланд
Теперь проблема - не с постгресом, а с тем, что в борландовых библиотеках нет описания виндовой функции SHGetFolderPath (они старые)
Попробуйте тот самый implib сделать на файл shfolder.dll из системы и положить получившийся shfolder.lib или в каталог с борландовскими библиотеками, или в текущий (src/interfaces/libq).


Quote from: arido
Да ilink32.exe.
Мне предложили сделать так:
Code: [Select]
implib libpq.lib libpq.dll

В итоге я получила требуемую libpq.lib, но нет уверенности, что она верна.
Пытальсь подключить ее к проекту, но нет реакции. Либо неправильно подключила, либо она не верная.

Подскажите, как в Borland C++ 5.5 правильно подключить библиотеку?

Должно быть выполнено два условия:
1) в настройках линкера должен быть прописан путь к каталогу, где лежат .lib-файлы, или они должны быть там же, где исходники
2) линкер нужно напрямую или через компилятор попросить прилинковать библиотеку.
напрямую - просто перечислить в командной строке линкера вместе с обжами:
ilink32 main.obj libpq.lib
через компилятор - надо смотреть /? от борланда, я не пользовался им со времён 3.1 и не помню.
должен быть флажок типа -l (L маленькая)

А нет реакции - это тоже ругается на отсутствующие экспорты PQconnectdb?

Offline Victor Snezhko

  • Jr. Member
  • **
  • Posts: 72
  • Karma: +0/-0
Подключение базы данных PostgreSQL
« Reply #21 on: November 25, 2006, 00:49:16 »
Quote from: Victor Snezhko
через компилятор - надо смотреть /? от борланда, я не пользовался им со времён 3.1 и не помню.
должен быть флажок типа -l (L маленькая)
И ещё - попробуйте просто взять пример из документации про постгрес на сайте, из раздела Client Interfaces, положить рядом libpq.lib, и скомпилировать из командной строки, в два прохода:

bcc32 -c main.c   -> получится main.obj
ilink32 main.obj libpq.lib

ilink'у надо ещё как-то указать имя екзешника, тут уж смотрите документацию по нему...

Offline arido

  • Newbie
  • *
  • Posts: 33
  • Karma: +0/-0
Подключение базы данных PostgreSQL
« Reply #22 on: November 25, 2006, 14:47:31 »
Quote from: Victor Snezhko
Ух уж этот борланд
Теперь проблема - не с постгресом, а с тем, что в борландовых библиотеках нет описания виндовой функции SHGetFolderPath (они старые)
Попробуйте тот самый implib сделать на файл shfolder.dll из системы и положить получившийся shfolder.lib или в каталог с борландовскими библиотеками, или в текущий (src/interfaces/libq).
Сделала - ошибка осталась таже самая!?  
Quote
Должно быть выполнено два условия:
1) в настройках линкера должен быть прописан путь к каталогу, где лежат .lib-файлы, или они должны быть там же, где исходники
Указала
Quote
2) линкер нужно напрямую или через компилятор попросить прилинковать библиотеку.
напрямую - просто перечислить в командной строке линкера вместе с обжами:
ilink32 main.obj libpq.lib
через компилятор - надо смотреть /? от борланда, я не пользовался им со времён 3.1 и не помню.
должен быть флажок типа -l (L маленькая)
И это есть. (-LПуть)
Quote
А нет реакции - это тоже ругается на отсутствующие экспорты PQconnectdb?
Да

Offline arido

  • Newbie
  • *
  • Posts: 33
  • Karma: +0/-0
Подключение базы данных PostgreSQL
« Reply #23 on: November 25, 2006, 15:11:52 »
Quote from: Victor Snezhko
И ещё - попробуйте просто взять пример из документации про постгрес на сайте, из раздела Client Interfaces, положить рядом libpq.lib, и скомпилировать из командной строки, в два прохода:

bcc32 -c main.c   -> получится main.obj
ilink32 main.obj libpq.lib
Сделала. Получила Try1.obj.
Далее выдал вот что:
Code: [Select]
D:\Nataly\Программы\CPP\Try_1>ilink32 try1.obj libpq.lib
Turbo Incremental Link 5.00 Copyright (c) 1997, 2000 Borland
Error: Unresolved external '__setargv__' referenced from root

Offline Victor Snezhko

  • Jr. Member
  • **
  • Posts: 72
  • Karma: +0/-0
Подключение базы данных PostgreSQL
« Reply #24 on: November 25, 2006, 21:53:01 »
Странно. Вот поставил я себе свободно распространяемый борландовский компилятор с ftp://ftpd.borland.com/download/bcppbuild...ndLinetools.exe

Как раз 5.5.

Всё получилось, опишу ещё раз процесс с самого начала.
1) Настроил пути в bcc32.cfg и ilink32.cfg, как в README
2) Распаковал исходники postgresql
3) Скопировал в каталоге src/include файл pg_config.h.win32 в pg_config.h
4) Запустил make -N -fbcc32.mak в каталоге src/interfaces/libpq
5) Увидел ругательство на слэш, поправил pg_config_paths.h
6) Запустил make ещё раз, увидел ругательства на wchar.c, поправил только static inline (убрал inline в двух местах). Как выяснилось, sizeof'ы править не надо
7) Запустил make третий раз - всё собралось, получился каталог Release, в нём blibpq.lib и blibpq.dll
8) Сделал файл test.c - первый пример из документации постгреса
9) Скомпилировал его:
bcc32 -I"путь_к_/src/include" -I"путь_к_/src/interfaces/libpq" test.c blibpq.lib

всё делал прямо в каталоге Release, заработало.

Попробуйте сделать свежий каталог с исходниками постгреса и проделать всё то же самое, если не заработает - возьмите указанный компилятор.

Да, исходники у меня тоже 8.1.4.

Quote from: arido
И это есть. (-LПуть)

Скорее всего это уже не нужно, но всё равно поясню:

-Lпуть как раз недостаточно - надо ещё библиотеку явно указать.
Как в предыдущем моём посте: bcc32 test.c blibpq.lib

С ilink32 - не так всё просто, там кроме .obj и .lib файлов, относящихся к программе, надо ещё указывать борландовские файлы c0w32.obj, cw32.lib (или им подобные)
« Last Edit: November 25, 2006, 21:53:57 by Victor Snezhko »

Offline arido

  • Newbie
  • *
  • Posts: 33
  • Karma: +0/-0
Подключение базы данных PostgreSQL
« Reply #25 on: November 26, 2006, 21:30:33 »
Quote from: Victor Snezhko
4) Запустил make -N -fbcc32.mak в каталоге src/interfaces/libpq
5) Увидел ругательство на слэш, поправил pg_config_paths.h
6) Запустил make ещё раз, увидел ругательства на wchar.c, поправил только static inline (убрал inline в двух местах). Как выяснилось, sizeof'ы править не надо
7) Запустил make третий раз - всё собралось, получился каталог Release, в нём blibpq.lib и blibpq.dll
Наконец получила blibpq.lib и blibpq.dll ! Большое спасибо! Только нет libpq.lib, хотя по описанию, должна быть.
Quote
8) Сделал файл test.c - первый пример из документации постгреса
9) Скомпилировал его:
bcc32 -I"путь_к_/src/include" -I"путь_к_/src/interfaces/libpq" test.c blibpq.lib
А вот с примером не выходит  
Выдает вот что:
Code: [Select]
D:\Nataly\Programming\CPP\Try_1>bcc32 try1.c libpq.lib
Borland C++ 5.5.1 for Win32 Copyright (c) 1993, 2000 Borland
Try1.c:
Turbo Incremental Link 5.00 Copyright (c) 1997, 2000 Borland
Error: Unresolved external '_PQconnectdb' referenced from D:\NATALY\PROGRAMMING\
CPP\TRY_1\TRY1.OBJ
Error: Unresolved external '_PQstatus' referenced from D:\NATALY\PROGRAMMING\CPP
\TRY_1\TRY1.OBJ
Error: Unresolved external '_PQresultStatus' referenced from D:\NATALY\PROGRAMMI
NG\CPP\TRY_1\TRY1.OBJ
Error: Unresolved external '_PQerrorMessage' referenced from D:\NATALY\PROGRAMMI
NG\CPP\TRY_1\TRY1.OBJ
Error: Unresolved external '_PQnfields' referenced from D:\NATALY\PROGRAMMING\CP
P\TRY_1\TRY1.OBJ
Error: Unresolved external '_PQfname' referenced from D:\NATALY\PROGRAMMING\CPP\
TRY_1\TRY1.OBJ
Error: Unresolved external '_PQgetvalue' referenced from D:\NATALY\PROGRAMMING\C
PP\TRY_1\TRY1.OBJ
Error: Unresolved external '_PQntuples' referenced from D:\NATALY\PROGRAMMING\CP
P\TRY_1\TRY1.OBJ
Error: Unresolved external '_PQexec' referenced from D:\NATALY\PROGRAMMING\CPP\T
RY_1\TRY1.OBJ
Error: Unresolved external '_PQclear' referenced from D:\NATALY\PROGRAMMING\CPP\
TRY_1\TRY1.OBJ
Error: Unresolved external '_PQfinish' referenced from D:\NATALY\PROGRAMMING\CPP
\TRY_1\TRY1.OBJ
Пробовала и так
Quote
bcc32 -I"путь_к_/src/include" -I"путь_к_/src/interfaces/libpq" test.c blibpq.lib
и так
Quote
bcc32 -c main.c -> получится main.obj
ilink32 main.obj libpq.lib
Code: [Select]
D:\Nataly\Programming\CPP\Try_1>bcc32 -c try1.c
Borland C++ 5.5.1 for Win32 Copyright (c) 1993, 2000 Borland
Try1.c:
D:\Nataly\Programming\CPP\Try_1>ilink32 try1.obj blibpq.lib
Turbo Incremental Link 5.00 Copyright (c) 1997, 2000 Borland
Error: Unresolved external '__setargv__' referenced from root
И из каталога \Release пробовала - не получается.
« Last Edit: November 26, 2006, 21:36:27 by arido »

Offline Victor Snezhko

  • Jr. Member
  • **
  • Posts: 72
  • Karma: +0/-0
Подключение базы данных PostgreSQL
« Reply #26 on: November 27, 2006, 01:57:16 »
Quote from: arido
Наконец получила blibpq.lib и blibpq.dll ! Большое спасибо! Только нет libpq.lib, хотя по описанию, должна быть.

Вот как раз blibpq.lib надо использовать вместо libpq.lib (почему-то в make-файле bcc32.mak прописано именно такое имя)

командная строка должна быть bcc32 -I"пути(как раньше)" test.c blibpq.lib - в каталоге release (у Вас указана libpq.lib - похоже, скопированная откуда-то ещё). Или, если программа в другом каталоге, blibpq.lib надо поместить туда, откуда она будет видна линкеру - или в тот же каталог, где test.c, или в каталог, прописанный в опциях -L линкера.

Upd:
вот это:

  bcc32 -c main.c -> получится main.obj
  ilink32 main.obj libpq.lib

да, не работает, по другой причине. main.obj и libpq.lib недостаточно, надо ещё указать борландовскую библиотеку и объектник с рантаймом (там и описаны __setargv и прочие)
« Last Edit: November 27, 2006, 02:18:29 by Victor Snezhko »

Offline arido

  • Newbie
  • *
  • Posts: 33
  • Karma: +0/-0
Подключение базы данных PostgreSQL
« Reply #27 on: November 29, 2006, 22:42:58 »
УРА!! К базе вроде подключаюсь! Надо было подключить обе библиотеки/
Прописала пути и добавила в код:
Code: [Select]
#pragma comment(lib,"blibpq.lib")
#pragma comment(lib,"blibpqdll.lib")

Всем СПАСИБО!!!

Теперь буду пытаться получить данные.

Offline Victor Snezhko

  • Jr. Member
  • **
  • Posts: 72
  • Karma: +0/-0
Подключение базы данных PostgreSQL
« Reply #28 on: December 02, 2006, 14:08:25 »
Quote from: arido
УРА!! К базе вроде подключаюсь! Надо было подключить обе библиотеки/
Прописала пути и добавила в код:
Code: [Select]
#pragma comment(lib,"blibpq.lib")
#pragma comment(lib,"blibpqdll.lib")

Всем СПАСИБО!!!

Теперь буду пытаться получить данные.

Поздравляю

Небольшой комментарий: библиотека blibpqdll.lib нужна, чтобы использовать код из blibpq.dll, а blibpq.lib сама содержит всё необходимое, при этом клиентский код libpq после линковки кладётся непосредственно в exe-файл программы.
Поэтому использовать достаточно только одну из них (либо blibpq.lib, либо blibpqdll.lib + blibpq.dll, которую надо класть рядом с программой), в зависимости от обстоятельств могут быть удобны оба варианта.

Offline arido

  • Newbie
  • *
  • Posts: 33
  • Karma: +0/-0
Подключение базы данных PostgreSQL
« Reply #29 on: February 26, 2007, 21:07:12 »
Здравствуйте!

Базу данных я подключила. Отправила запрос
Code: [Select]
case WM_CREATE:
                {
              //Подключение базы данных
              conninfo = "hostaddr = 192.168.10.1 dbname = sppr";
              conn = PQconnectdb(conninfo);
              if (PQstatus(conn) != CONNECTION_OK)
                     {
                 MessageBox(hWnd,PQerrorMessage(conn),
                            "Невозможно подключиться к базе",
                                 MB_OK);
                 PQfinish(conn);
                      exit(1);
                }
              value[0] = "12345";
              res = PQexecParams(conn, "select * from tip where npp=2;",
                                           0, NULL, value, NULL, NULL, 1);
              if (PQresultStatus(res) != PGRES_TUPLES_OK)
                 {
                  MessageBox(hWnd,PQerrorMessage(conn),
                               "PQresultStatus(res)",
                                  MB_OK);
                     PQfinish(conn);
                          exit(1);
                  /*fprintf(stderr, "SELECT failed: %s", PQerrorMessage(conn));
                  PQclear(res);
                  exit_nicely(conn);*/
                 }

              tip_fnum = PQfnumber(res, "tip");
              j=PQntuples(res);
              for (i = 0; i < PQntuples(res); i++)
                 {
                  char *tip_ptr;
                  int  ival;

                  /* Get the field values (we ignore possibility they are null!) */
                  tip_ptr = PQgetvalue(res, i, tip_fnum);
              /**/MessageBox(hWnd,itoa(PQgetlength(res, i, tip_fnum), s, 10),
                               "!!!!!",
                                  MB_OK);

                  printf("tuple %d: got\n", i);
                  printf(" i = (%d bytes) %d\n",
                         PQgetlength(res, i, tip_fnum), ival);

                 }/********/
              PQclear(res);
              PQfinish(conn);

              ...
              return 0;
             }
и получила ответ. А вот разобрать ответ пока не получается.  
Подскажите как это сделать!?
« Last Edit: February 27, 2007, 19:54:09 by arido »

Offline Victor Snezhko

  • Jr. Member
  • **
  • Posts: 72
  • Karma: +0/-0
Подключение базы данных PostgreSQL
« Reply #30 on: March 04, 2007, 23:39:16 »
Quote from: arido
Здравствуйте!

Базу данных я подключила. Отправила запрос
Code: [Select]
                  tip_ptr = PQgetvalue(res, i, tip_fnum);
и получила ответ. А вот разобрать ответ пока не получается. :unsure:
Подскажите как это сделать!?

А в чём проблема?
По адресу tip_ptr и будет располагаться значение колонки tip в текущей строке.

Offline Dmitry Istomin

  • Newbie
  • *
  • Posts: 10
  • Karma: +0/-0
Подключение базы данных PostgreSQL
« Reply #31 on: October 30, 2007, 13:38:22 »
Добрый день! Я скачал уже скомпилированный файл libpq.lib и добавил его в библиотеку С++ Builder. Все замечательно распозналось. Но при компиляции приложения выдается ошибка EOleException с сообщением "Объект или поставщик не может выполнить требуемую операцию". Я покопался в документации и нашел такую информацию, что в библиотеку следует добавить не libpq.lib, а libpq++.lib. Я скачал исходники, но проблема в том что я не умею работать с ними и не понимаю как их откомпилировать. Очень прошу помощи так как скоро нужно отчитываться по работе...

Offline Victor Snezhko

  • Jr. Member
  • **
  • Posts: 72
  • Karma: +0/-0
Подключение базы данных PostgreSQL
« Reply #32 on: November 01, 2007, 02:20:00 »
Quote from: Dmitry Istomin
Добрый день! Я скачал уже скомпилированный файл libpq.lib и добавил его в библиотеку С++ Builder. Все замечательно распозналось. Но при компиляции приложения выдается ошибка EOleException с сообщением "Объект или поставщик не может выполнить требуемую операцию". Я покопался в документации и нашел такую информацию, что в библиотеку следует добавить не libpq.lib, а libpq++.lib. Я скачал исходники, но проблема в том что я не умею работать с ними и не понимаю как их откомпилировать. Очень прошу помощи так как скоро нужно отчитываться по работе...

Cудя по тому, что релизов этого libpq++ не было с 2002 года, по нему вряд ли удастся услышать ответы на какие-либо вопросы. Так что рекомендую остановиться на обычном libpq.
Решить проблему с EOleException невозможно без подробного описания - что делалось, каким образом. Непонятно также, зачем код libpq.dll выполняется при компиляции.

Offline Dmitry Istomin

  • Newbie
  • *
  • Posts: 10
  • Karma: +0/-0
Подключение базы данных PostgreSQL
« Reply #33 on: November 01, 2007, 09:08:15 »
Quote from: Victor Snezhko
Cудя по тому, что релизов этого libpq++ не было с 2002 года, по нему вряд ли удастся услышать ответы на какие-либо вопросы. Так что рекомендую остановиться на обычном libpq.
Решить проблему с EOleException невозможно без подробного описания - что делалось, каким образом. Непонятно также, зачем код libpq.dll выполняется при компиляции.
Да собственно говоря я ничего не делал. Я прописал свойство ConnectionString компонента TADOConection (Provider=PostgreSQL OLE DB Provider;Password=MyPassword;User ID=Admin;Data Source=localhost;Location=MyDataBase;Extended Properties=""), затем выбрал нужную мне таблицу в TADOTable. Когда делаю ее активной то возникает ошибка, с неактивной все проходит хорошо. Собственно так и не могу понять в чем проблема. Вот и подумал что проблема именно в libpq.
« Last Edit: November 01, 2007, 09:12:06 by Dmitry Istomin »

Offline Victor Snezhko

  • Jr. Member
  • **
  • Posts: 72
  • Karma: +0/-0
Подключение базы данных PostgreSQL
« Reply #34 on: November 06, 2007, 22:10:17 »
Quote from: Dmitry Istomin
Да собственно говоря я ничего не делал. Я прописал свойство ConnectionString компонента TADOConection (Provider=PostgreSQL OLE DB Provider;Password=MyPassword;User ID=Admin;Data Source=localhost;Location=MyDataBase;Extended Properties=""), затем выбрал нужную мне таблицу в TADOTable. Когда делаю ее активной то возникает ошибка, с неактивной все проходит хорошо. Собственно так и не могу понять в чем проблема. Вот и подумал что проблема именно в libpq.

Ага - через OLE DB!
Попробуйте обновить провайдер с pgfoundry.org/projects/oledb и включить логгинг - посмотрите, какие будут ошибки.

Offline Dmitry Istomin

  • Newbie
  • *
  • Posts: 10
  • Karma: +0/-0
Подключение базы данных PostgreSQL
« Reply #35 on: November 09, 2007, 21:28:17 »
Да я обновлял провайдер. Я раньше не добавлял libpq.lib к проекту, а когда добавил то у меня вылезла ошибка:
"[Linker Error] 'C:\PROGRAM FILES\BORLAND\CBUILDER6\LIB\LIBPQ.LIB' contains invalid OMF record, type 0x21 (possibly COFF)"


1) Файл libpq.lib должен быть подключен к проекту?
2) Этот файл обязательно должен собираться из исходников или можно взять уже готовый файл?
« Last Edit: November 09, 2007, 21:34:48 by Dmitry Istomin »

Offline Victor Snezhko

  • Jr. Member
  • **
  • Posts: 72
  • Karma: +0/-0
Подключение базы данных PostgreSQL
« Reply #36 on: November 12, 2007, 22:04:32 »
Quote from: Dmitry Istomin
Да я обновлял провайдер. Я раньше не добавлял libpq.lib к проекту, а когда добавил то у меня вылезла ошибка:
"[Linker Error] 'C:\PROGRAM FILES\BORLAND\CBUILDER6\LIB\LIBPQ.LIB' contains invalid OMF record, type 0x21 (possibly COFF)"
1) Файл libpq.lib должен быть подключен к проекту?
2) Этот файл обязательно должен собираться из исходников или можно взять уже готовый файл?

libpq.lib вообще не нужен, если работа идёт через ADO. В этом случае нужен только зарегистрированный провайдер pgoledb.dll, которому, в свою очередь, нужна libpq.dll

Второй вариант - можно выкинуть провайдер и пользоваться напрямую libpq.dll в соответствии с документацией по postgresql. Тогда libpq.lib уже нужен, но, насколько я помню, для борландовских компиляторов его надо собирать из исходников postgresql руками вместе с libpq.dll (из src/interfaces/libpq).

Offline Dmitry Istomin

  • Newbie
  • *
  • Posts: 10
  • Karma: +0/-0
Подключение базы данных PostgreSQL
« Reply #37 on: November 14, 2007, 16:35:17 »
Я скачал архив с pgfoundry.org/projects/oledb, зарегистрировал библиотеки как в README. Но ошибка не исправляется, выдается все то же: "Объект или поставщик не может выполнить требуемую операцию". Не понимаю что она означает. Знаю только то что она возникает при установки значения свойства Activate компонента TADOTable в True. Смотрел в справке но там как то все размыто написано. Уже просто не знаю че делать хотя вроде все правильно. Может быть нужно сделать какие то настройки в самом PostgreSQL? (у меня версия 8.2)

Со вторым вариантом сложнее потому что я вобще понятия не имею как это все делается. В документации насколько я знаю написана всего одна команда. Пробовал - не получилось. Читал тут на форуме, но так ничего и не понял - обсуждаются какие то конкретные моменты, а не все конкретно общий алгоритм.
« Last Edit: November 14, 2007, 16:36:23 by Dmitry Istomin »

Offline Victor Snezhko

  • Jr. Member
  • **
  • Posts: 72
  • Karma: +0/-0
Подключение базы данных PostgreSQL
« Reply #38 on: November 18, 2007, 17:56:00 »
Quote from: Dmitry Istomin
Я скачал архив с pgfoundry.org/projects/oledb, зарегистрировал библиотеки как в README. Но ошибка не исправляется, выдается все то же: "Объект или поставщик не может выполнить требуемую операцию". Не понимаю что она означает. Знаю только то что она возникает при установки значения свойства Activate компонента TADOTable в True. Смотрел в справке но там как то все размыто написано. Уже просто не знаю че делать хотя вроде все правильно. Может быть нужно сделать какие то настройки в самом PostgreSQL? (у меня версия 8.2)

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

Включите протоколирование действий провайдера (описано в README).
В логе должно быть видно, из-за чего выдаётся ошибка.

По libpq - как это одна команда?
http://www.postgresql.org/docs/8.2/static/libpq.html
там и команд много, и примеры есть...

Offline Dmitry Istomin

  • Newbie
  • *
  • Posts: 10
  • Karma: +0/-0
Подключение базы данных PostgreSQL
« Reply #39 on: November 19, 2007, 18:45:08 »
Сделал лог но честно говоря не могу понять где тут ошибка
« Last Edit: November 19, 2007, 18:46:48 by Dmitry Istomin »