Здравствуйте.
Есть программа использующая либу SOCI натасканая на Oracle. надо уйти от Oracle, Т.Е. данные перенести в PostgreSQL. Не вопрос, но я не работал с PostgreSQL — каким образом можно SOCI натравить на PostgreSQL. Не получается подключиться к базе(вернее как — я не знаю). Существует ли для клиентских приложений подобие TNSNAMES.ORA как в Oracle?
т.е. что я должен написать в:
try
{
soci::session sql(soci::postgresql, "dbname=mydatabase");
}
catch (soci::soci_error const & e)
{
PostgreSQL error: Cannot establish connection to the database.
could not connect to server: Connection refused (0x0000274D/10061)
Is the server running on host "???" and accepting
TCP/IP connections on port 5432?
З.Ы. SOCI пересобранна с учетом PostgreSQL(libpq).
Здравствуйте, Аноним, Вы писали:
[]
А>А>PostgreSQL error: Cannot establish connection to the database.
А>could not connect to server: Connection refused (0x0000274D/10061)
А> Is the server running on host "???" and accepting
А> TCP/IP connections on port 5432?
Похоже, в строке подключения кроме dbname нужно еще указать host на котором работает сервер PostgreSQL. В
документации SOCI говорится что
The set of parameters used in the connection string for PostgreSQL is the same as accepted by the PQconnectdb function from the libpq library.
Когда я пытался использовать SOCI, приходилось ходить отладчиком по коду, чтобы понять как что работает. Усложнили хорошую библиотеку в версии 2.0, когда добавили поддержку разных БД
Причем разные бэкэнды к базам видимо писали разные люди, в частности, поддержка SQLite реализована неэффективно. В итоге пришлось отказаться от SOCI
Здравствуйте, PM, Вы писали:
PM>Похоже, в строке подключения кроме dbname нужно еще указать host на котором работает сервер PostgreSQL. В документации SOCI говорится что
PM>PM>The set of parameters used in the connection string for PostgreSQL is the same as accepted by the PQconnectdb function from the libpq library.
Спасибо — помогло!!! Как сам не заметил
PM>Причем разные бэкэнды к базам видимо писали разные люди
Да, действительно — похоже на то