I am modifying existing programs that were bound to Informix to use ODBC.
All this under SUN Solaris.
I use unixODBC and setup 3 databases to connect to through ODBC:
- Informix ODBC (CLI)
I have a test program that makes various ODBC calls (Connect, Select, Insert,
Update, Delete) to these databases. This program works well with the two others.
I use PostgreSQL 8.1.4 and psqlodbc-08.01.0200.
My problem with the PostgreSQL ODBC is: I cannot Update or Delete rows using
I have seen many threads on this subject in this newsgroup but I cannot figure
out what to do to have it work.
First, I re-created the database with oids since they look essential in this
Then I put UpdatableCursors=1 in odbc.ini, as seen in other threads
Here is the odbc.ini part for pgodbc:
Description=PostgreSQL ODBC DRIVER
The main problem is I cannot change the cursor type of the SELECT statement.
When calling SQLSetStmtAttr(hstmt, SQL_ATTR_CURSOR_TYPE, (SQLPOINTER)
SQL_CURSOR_KEYSET_DRIVEN, 0); as seen in an other thread, I get a return code of
SQL_SUCCESS_WITH_INFO and SQLDiagRec returns:
NATIVE CODE: 16
MESSAGE: Requested value changed.
If I call SQLGetStmtAttr(..., SQL_ATTR_CURSOR_TYPE,...); it returns
I really think this is why I cannot update or delete rows using SQLSetPos() but
I don't know why I cannot change the cursor type.
I have to say, I spent some hours reading this newsgroup to try finding a
solution but I am completely stuck now.
Any help would be greatly appreciated.
Thanks in advance.
pgsql-odbc by date
|Next:||From: noreply||Date: 2006-07-28 07:14:21|
|Subject: [ psqlodbc-Bugs-1000692 ] Broken UTF-8 support in Version 08.02.0002|
|Previous:||From: David Chappelle||Date: 2006-07-27 13:52:12|
|Subject: CC_lookup_cs_new() bug|