From a prior posting on November 5, 2002, I found this text regarding the use of CTID in the ODBC driver:
The driver uses CTID and OID to implement updatable cursors. Please turn off the *Updatable cursors* DSN option if you don't like the behavior. regards, Hiroshi Inoue
I am having a problem where I need to use updatable cursors with views. It appears that the ODBC driver is trying to use the CTID and OID columns and that views don't have these columns. Is it possible to use updatable cursors with views via the PostgreSQL ODBC driver?
Not from what Hiroshi has said (he wrote the cursor code). I imagine he used CTID because it needs to be able to locate the exact version of each row - in a view that won't work because ctid don't exist. I guess you could try adding it to your view definition though that will probably only work for single table views of course.
I'm not sure why he would have used oid given that it may not exist even in a table...
Regards, Dave.