Thread: Problems with PostgreSQL ODBC UNICODE driver on Win2000
Hi,
I am using the PostgreSQL ODBC driver to migrate some data from a PostgreSQL server to a MS SQL Server 2000 and am encountering some problems when using the UNICODE variant of the driver... I am not completely sure what it relates to but when the driver seems to connect to the db the first time it crashes and takes the import / export program of SQL Server with it... I have no problems at all when I use the other ODBC driver ('PostgreSQL') but then my Unicode data is not transferred correctly.
I didn't really know where to look so I pasted underneath this mail as much as relevant information / logs I could find.
Thx a lot for already reading this mail and I hope to hear from you!
Mik
System info:
PostgreSQL server version: 7.3.2 running on Red Hat Linux
ODBC Driver version: psqlodbc-07_03_0100.zip (PostgreSQL Unicode (Beta)) running on Windows 2000 (SP3)
Log files:
psqlodbc_***.log:
Global Options: Version='07.03.0100', fetch=100, socket=4096, unknown_sizes=0, max_varchar_size=254, max_longvarchar_size=8190
disable_optimizer=1, ksqo=1, unique_index=1, use_declarefetch=0
text_as_longvarchar=1, unknowns_as_longvarchar=0, bools_as_char=1 NAMEDATALEN=64
extra_systable_prefixes='dd_;', conn_settings='' conn_encoding='OTHER'
conn=30292440, query=' '
conn=30292440, query='select version()'
[ fetched 1 rows ]
[ PostgreSQL version string = 'PostgreSQL 7.3.2 on i686-pc-linux-gnu, compiled by GCC gcc (GCC) 3.2 20020903 (Red Hat Linux 8.0 3.2-7)' ]
[ PostgreSQL version number = '7.3' ]
conn=30292440, query='set DateStyle to 'ISO''
conn=30292440, query='set geqo to 'OFF''
conn=30292440, query='select oid from pg_type where typname='lo''
[ fetched 0 rows ]
conn=30292440, query='select pg_client_encoding()'
[ fetched 1 rows ]
[ Client encoding = 'UNICODE' (code = 6) ]
conn=30292440, PGAPI_DriverConnect(out)='DSN=PostgreSQL30;DATABASE=wcsdev;SERVER=194.78.47.15;PORT=5432;UID=wcs;PWD=xxx;ReadOnly=0;Protocol=6.4;FakeOidIndex=0;ShowOidColumn=0;RowVersioning=0;ShowSystemTables=0;ConnSettings=;Fetch=100;Socket=4096;UnknownSizes=0;MaxVarcharSize=254;MaxLongVarcharSize=8190;Debug=1;CommLog=1;Optimizer=1;Ksqo=1;UseDeclareFetch=0;TextAsLongVarchar=1;UnknownsAsLongVarchar=0;BoolsAsChar=1;Parse=0;CancelAsFreeStmt=0;ExtraSysTablePrefixes=dd_;;LFConversion=1;UpdatableCursors=1;DisallowPremature=0;TrueIsMinus1=0;BI=0;ByteaAsLongVarBinary=0;UseServerSidePrepare=0'
conn=30292440, query='select relname, nspname, relkind from pg_catalog.pg_class, pg_catalog.pg_namespace where relkind in ('r', 'v') and relname !~ '^pg_|^dd_' and pg_namespace.oid = relnamespace order by nspname, relname'
[ fetched 31 rows ]
mylog_***.log:
<tail...>
[1360]manual_result = 1, use_declarefetch = 0
[1360]**** SC_fetch: manual_result
[1360]fetch: cols=5, lf=0, opts = 30311872, opts->bindings = 30323000, buffer[] = 20648032
[1360]type = 1043
[1360]manual_result
[1360]value = '<NULL>'
[1360]copy_and_convert: field_type = 1043, fctype = 1, value = '<NULL>', cbValueMax=256
[1360]copy_and_convert: retval = 0
[1360]fetch: cols=5, lf=1, opts = 30311872, opts->bindings = 30323000, buffer[] = 20648296
[1360]type = 1043
[1360]manual_result
[1360]value = 'public'
[1360]copy_and_convert: field_type = 1043, fctype = 1, value = 'public', cbValueMax=130
[1360]DEFAULT: len = 6, ptr = 'publicl'
[1360] SQL_C_CHAR, default: len = 6, cbValueMax = 130, rgbValueBindRow = 'public'
[1360]copy_and_convert: retval = 0
[1360]fetch: cols=5, lf=2, opts = 30311872, opts->bindings = 30323000, buffer[] = 20648440
[1360]type = 1043
[1360]manual_result
[1360]value = 'user_principal'
[1360]copy_and_convert: field_type = 1043, fctype = 1, value = 'user_principal', cbValueMax=130
[1360]DEFAULT: len = 14, ptr = 'user_principal'
[1360] SQL_C_CHAR, default: len = 14, cbValueMax = 130, rgbValueBindRow = 'user_principal'
[1360]copy_and_convert: retval = 0
[1360]fetch: cols=5, lf=3, opts = 30311872, opts->bindings = 30323000, buffer[] = 20648584
[1360]type = 1043
[1360]manual_result
[1360]value = 'TABLE'
[1360]copy_and_convert: field_type = 1043, fctype = 1, value = 'TABLE', cbValueMax=66
[1360]DEFAULT: len = 5, ptr = 'TABLE'
[1360] SQL_C_CHAR, default: len = 5, cbValueMax = 66, rgbValueBindRow = 'TABLE'
[1360]copy_and_convert: retval = 0
[1360]fetch: cols=5, lf=4, opts = 30311872, opts->bindings = 30323000, buffer[] = 20648672
[1360]type = 1043
[1360]manual_result
[1360]value = ''
[1360]copy_and_convert: field_type = 1043, fctype = 1, value = '', cbValueMax=510
[1360]DEFAULT: len = 0, ptr = '0®Î_B'
[1360] SQL_C_CHAR, default: len = 0, cbValueMax = 510, rgbValueBindRow = ''
[1360]copy_and_convert: retval = 0
[1360][[SQLFetch]][1360]PGAPI_ExtendedFetch: stmt=30311792
[1360]SQL_FETCH_NEXT: num_tuples=31, currtuple=29
[1360]PGAPI_ExtendedFetch: new currTuple = 29
[1360]manual_result = 1, use_declarefetch = 0
[1360]**** SC_fetch: manual_result
[1360]fetch: cols=5, lf=0, opts = 30311872, opts->bindings = 30323000, buffer[] = 20648032
[1360]type = 1043
[1360]manual_result
[1360]value = '<NULL>'
[1360]copy_and_convert: field_type = 1043, fctype = 1, value = '<NULL>', cbValueMax=256
[1360]copy_and_convert: retval = 0
[1360]fetch: cols=5, lf=1, opts = 30311872, opts->bindings = 30323000, buffer[] = 20648296
[1360]type = 1043
[1360]manual_result
[1360]value = 'public'
[1360]copy_and_convert: field_type = 1043, fctype = 1, value = 'public', cbValueMax=130
[1360]DEFAULT: len = 6, ptr = 'publicl'
[1360] SQL_C_CHAR, default: len = 6, cbValueMax = 130, rgbValueBindRow = 'public'
[1360]copy_and_convert: retval = 0
[1360]fetch: cols=5, lf=2, opts = 30311872, opts->bindings = 30323000, buffer[] = 20648440
[1360]type = 1043
[1360]manual_result
[1360]value = 'user_profile'
[1360]copy_and_convert: field_type = 1043, fctype = 1, value = 'user_profile', cbValueMax=130
[1360]DEFAULT: len = 12, ptr = 'user_profile'
[1360] SQL_C_CHAR, default: len = 12, cbValueMax = 130, rgbValueBindRow = 'user_profile'
[1360]copy_and_convert: retval = 0
[1360]fetch: cols=5, lf=3, opts = 30311872, opts->bindings = 30323000, buffer[] = 20648584
[1360]type = 1043
[1360]manual_result
[1360]value = 'TABLE'
[1360]copy_and_convert: field_type = 1043, fctype = 1, value = 'TABLE', cbValueMax=66
[1360]DEFAULT: len = 5, ptr = 'TABLE'
[1360] SQL_C_CHAR, default: len = 5, cbValueMax = 66, rgbValueBindRow = 'TABLE'
[1360]copy_and_convert: retval = 0
[1360]fetch: cols=5, lf=4, opts = 30311872, opts->bindings = 30323000, buffer[] = 20648672
[1360]type = 1043
[1360]manual_result
[1360]value = ''
[1360]copy_and_convert: field_type = 1043, fctype = 1, value = '', cbValueMax=510
[1360]DEFAULT: len = 0, ptr = '0®Î_B'
[1360] SQL_C_CHAR, default: len = 0, cbValueMax = 510, rgbValueBindRow = ''
[1360]copy_and_convert: retval = 0
[1360][[SQLFetch]][1360]PGAPI_ExtendedFetch: stmt=30311792
[1360]SQL_FETCH_NEXT: num_tuples=31, currtuple=30
[1360][[SQLFreeHandle]][1360]PGAPI_FreeStmt: entering...hstmt=30311792, fOption=1
[1360]QResult: in DESTRUCTOR
[1360]TupleList: in DESTRUCTOR
[1360]TupleList: exit DESTRUCTOR
[1360]QResult: free memory in, fcount=0
[1360]QResult: free memory out
[1360]QResult: exit DESTRUCTOR
[1360]SC_Destructor: self=30311792, self->result=0, self->hdbc=30292440
[1360]reset_a_column_binding: entering ... self=30311872, bindings_allocated=5, icol=1
[1360]reset_a_column_binding: entering ... self=30311872, bindings_allocated=5, icol=2
[1360]reset_a_column_binding: entering ... self=30311872, bindings_allocated=5, icol=3
[1360]reset_a_column_binding: entering ... self=30311872, bindings_allocated=5, icol=4
[1360]reset_a_column_binding: entering ... self=30311872, bindings_allocated=5, icol=5
[1360]APD_free_params: ENTER, self=30311924
[1360]IPD_free_params: ENTER, self=30311952
[1360]IPD_free_params: EXIT
[1360]SC_Destructor: EXIT