psqlodbc-08_00_0102 and LATIN1 database - Mailing list pgsql-odbc
From | Laurent Constantin |
---|---|
Subject | psqlodbc-08_00_0102 and LATIN1 database |
Date | |
Msg-id | 42FB4BFC.2030300@aql.fr Whole thread Raw |
List | pgsql-odbc |
Hello, A character encoding error arises with psqlodbc-08_00_0102. It was ok with psqlodbc-08_00_0101. By switching files psqlodbc.dll of both versions, problem appears/disappears, so I'm almost sure some change between 0101 and 0102 causes the error. I have a LATIN1 database : # psql -l List of databases Name | Owner | Encoding -----------+--------+----------- vulne | abcd | LATIN1 # psql --version psql (PostgreSQL) 8.0.3 I use a French (latin1, ISO-8859-1) version of Access 2000. In the way PostgreSQL ==> Access : With version 0102, characters are converted from LATIN1 to unicode. So, all my French accent characters, stored in the database, "eats" following letters. For example : exécuter is displayed in Access as : ex[]ter (the [] means a black box) In the way Access ==> Postgresql : With version 0102, caracters are converted from unicode to LATIN1. So, if I enter a French accent in Access, a strange char is stored in PostgreSQL. There is no error message. Attached, you'll find log files. In order to work, I reinstalled psqlodbc-08_00_0101, so you don't have to hurry for me :). However, this is a blocking problem if I want to install a future version of psqlodbc. Don't hesitate to contact me. I am at your disposal to test any dll you may send to me. PS: I couldn't find the changelog to see what kind of change could have caused this. Thanks, Regards, Laurent Constantin -- laurent.constantin@aql.fr [principal/main] http://www.laurentconstantin.com/ [principal/main] laurentconstantin@free.fr [secondaire/backup] http://go.to/laurentconstantin/ [secondaire/backup] http://laurentconstantin.est-la.com/ [secondaire/backup] CONN ERROR: func=PGAPI_GetConnectOption, desc='fOption=30002', errnum=205, errmsg='Unknown connect option (Get)' ------------------------------------------------------------ henv=151068560, conn=151074464, status=0, num_stmts=16 sock=151068616, stmts=151068688, lobj_type=-999 ---------------- Socket Info ------------------------------- socket=-1, reverse=0, errornumber=0, errormsg='(NULL)' buffer_in=151085480, buffer_out=151093680 buffer_filled_in=0, buffer_filled_out=0, buffer_read_in=0 conn=151074464, PGAPI_DriverConnect( in)='DSN=vigi_vulne;UID=Admin;PWD=;DATABASE=vulne;SERVER=192.168.100.4;PORT=5432;A6=;A7=100;A8=8192;B0=254;B1=8190;BI=0;C2=dd_;CX=1b8103ac;', fDriverCompletion=0 DSN info: DSN='vigi_vulne',server='192.168.100.4',port='5432',dbase='vulne',user='Admin',passwd='xxxxx' onlyread='0',protocol='6.4',showoid='0',fakeoidindex='0',showsystable='0' conn_settings='',conn_encoding='OTHER' translation_dll='',translation_option='' [1060]globals.extra_systable_prefixes = 'dd_;' [1060][[SQLAllocHandle]][1060]**** in PGAPI_AllocEnv ** [1060]** exit PGAPI_AllocEnv: phenv = 151068560 ** [1060][[SQLSetEnvAttr]] att=200,2 [1060][[SQLAllocHandle]][1060]PGAPI_AllocConnect: entering... [1060]**** PGAPI_AllocConnect: henv = 151068560, conn = 151074464 [1060]EN_add_connection: self = 151068560, conn = 151074464 [1060] added at i =0, conn->henv = 151068560, conns[i]->henv = 151068560 [1060][SQLGetInfoW(30)][1060]PGAPI_GetInfo: entering...fInfoType=77 [1060]PGAPI_GetInfo: p='03.00', len=10, value=0, cbMax=12 [1060][SQLSetConnectAttrW][1060]PGAPI_SetConnectAttr 103 [1060]PGAPI_SetConnectOption: entering fOption = 103 vParam = 20 [1060][SQLGetConnectAttrW][1060]PGAPI_GetConnectAttr 30002 [1060]PGAPI_GetConnectOption: entering... [1060]CONN ERROR: func=PGAPI_GetConnectOption, desc='fOption=30002', errnum=205, errmsg='Unknown connect option (Get)' [1060][SQLSetConnectAttrW][1060]PGAPI_SetConnectAttr 30002 [1060]PGAPI_SetConnectOption: entering fOption = 30002 vParam = 149754920 [1060]Microsoft Jet !!!! [1060][SQLDriverConnectW][1060]PGAPI_DriverConnect: entering... [1060]**** PGAPI_DriverConnect: fDriverCompletion=0, connStrIn='DSN=vigi_vulne;UID=Admin;PWD=;DATABASE=vulne;SERVER=192.168.100.40;PORT=5432;A6=;A7=100;A8=8192;B0=254;B1=8190;BI=0;C2=dd_;CX=1b8103ac;' [1060]our_connect_string = 'DSN=vigi_vulne;UID=Admin;PWD=;DATABASE=vulne;SERVER=192.168.100.40;PORT=5432;A6=;A7=100;A8=8192;B0=254;B1=8190;BI=0;C2=dd_;CX=1b8103ac;' [1060]attribute = 'DSN', value = 'vigi_vulne' [1060]copyAttributes: DSN='vigi_vulne',server='',dbase='',user='',passwd='xxxxx',port='',onlyread='',protocol='',conn_settings='',disallow_premature=-1) [1060]attribute = 'UID', value = 'Admin' [1060]copyAttributes: DSN='vigi_vulne',server='',dbase='',user='Admin',passwd='xxxxx',port='',onlyread='',protocol='',conn_settings='',disallow_premature=-1) [1060]attribute = 'PWD', value = 'xxxxx' [1060]copyAttributes: DSN='vigi_vulne',server='',dbase='',user='Admin',passwd='xxxxx',port='',onlyread='',protocol='',conn_settings='',disallow_premature=-1) [1060]attribute = 'DATABASE', value = 'vulne'192.168.100.4 [1060]copyAttributes: DSN='vigi_vulne',server='',dbase='vulne',user='Admin',passwd='xxxxx',port='',onlyread='',protocol='',conn_settings='',disallow_premature=-1) [1060]attribute = 'SERVER', value = '192.168.100.4' [1060]copyAttributes: DSN='vigi_vulne',server='192.168.100.4',dbase='vulne',user='Admin',passwd='xxxxx',port='',onlyread='',protocol='',conn_settings='',disallow_premature=-1) [1060]attribute = 'PORT', value = '5432' [1060]copyAttributes: DSN='vigi_vulne',server='192.168.100.4',dbase='vulne',user='Admin',passwd='xxxxx',port='5432',onlyread='',protocol='',conn_settings='',disallow_premature=-1) [1060]attribute = 'A6', value = '' [1060]copyAttributes: DSN='vigi_vulne',server='192.168.100.4',dbase='vulne',user='Admin',passwd='xxxxx',port='5432',onlyread='',protocol='',conn_settings='',disallow_premature=-1) [1060]attribute = 'A7', value = '100' [1060]copyAttributes: DSN='vigi_vulne',server='192.168.100.4',dbase='vulne',user='Admin',passwd='xxxxx',port='5432',onlyread='',protocol='',conn_settings='',disallow_premature=-1) [1060]attribute = 'A8', value = '8192' [1060]copyAttributes: DSN='vigi_vulne',server='192.168.100.4',dbase='vulne',user='Admin',passwd='xxxxx',port='5432',onlyread='',protocol='',conn_settings='',disallow_premature=-1) [1060]attribute = 'B0', value = '254' [1060]copyAttributes: DSN='vigi_vulne',server='192.168.100.4',dbase='vulne',user='Admin',passwd='xxxxx',port='5432',onlyread='',protocol='',conn_settings='',disallow_premature=-1) [1060]attribute = 'B1', value = '8190' [1060]copyAttributes: DSN='vigi_vulne',server='192.168.100.4',dbase='vulne',user='Admin',passwd='xxxxx',port='5432',onlyread='',protocol='',conn_settings='',disallow_premature=-1) [1060]attribute = 'BI', value = '0' [1060]copyAttributes: DSN='vigi_vulne',server='192.168.100.4',dbase='vulne',user='Admin',passwd='xxxxx',port='5432',onlyread='',protocol='',conn_settings='',disallow_premature=-1) [1060]attribute = 'C2', value = 'dd_' [1060]copyAttributes: DSN='vigi_vulne',server='192.168.100.4',dbase='vulne',user='Admin',passwd='xxxxx',port='5432',onlyread='',protocol='',conn_settings='',disallow_premature=-1) [1060]attribute = 'CX', value = '1b8103ac' [1060]copyAttributes: DSN='vigi_vulne',server='192.168.100.4',dbase='vulne',user='Admin',passwd='xxxxx',port='5432',onlyread='0',protocol='6.4',conn_settings='',disallow_premature=1) [1060]globals.extra_systable_prefixes = 'dd_;' [1060]our_connect_string = 'DSN=vigi_vulne;UID=Admin;PWD=;DATABASE=vulne;SERVER=192.168.100.4;PORT=5432;A6=;A7=100;A8=8192;B0=254;B1=8190;BI=0;C2=dd_;CX=1b8103ac;' [1060]attribute = 'DSN', value = 'vigi_vulne' [1060]CopyCommonAttributes: A7=100;A8=8192;A9=0;B0=254;B1=8190;B2=0;B3=0;B4=1;B5=1;B6=0;B7=1;B8=0;B9=0;C0=0;C1=0;C2=dd_;[1060]attribute= 'UID', value= 'Admin' [1060]CopyCommonAttributes: A7=100;A8=8192;A9=0;B0=254;B1=8190;B2=0;B3=0;B4=1;B5=1;B6=0;B7=1;B8=0;B9=0;C0=0;C1=0;C2=dd_;[1060]attribute= 'PWD', value= 'xxxxx' [1060]CopyCommonAttributes: A7=100;A8=8192;A9=0;B0=254;B1=8190;B2=0;B3=0;B4=1;B5=1;B6=0;B7=1;B8=0;B9=0;C0=0;C1=0;C2=dd_;[1060]attribute= 'DATABASE',value = 'vulne' [1060]CopyCommonAttributes: A7=100;A8=8192;A9=0;B0=254;B1=8190;B2=0;B3=0;B4=1;B5=1;B6=0;B7=1;B8=0;B9=0;C0=0;C1=0;C2=dd_;[1060]attribute= 'SERVER', value= '192.168.100.4' [1060]CopyCommonAttributes: A7=100;A8=8192;A9=0;B0=254;B1=8190;B2=0;B3=0;B4=1;B5=1;B6=0;B7=1;B8=0;B9=0;C0=0;C1=0;C2=dd_;[1060]attribute= 'PORT', value= '5432' [1060]CopyCommonAttributes: A7=100;A8=8192;A9=0;B0=254;B1=8190;B2=0;B3=0;B4=1;B5=1;B6=0;B7=1;B8=0;B9=0;C0=0;C1=0;C2=dd_;[1060]attribute= 'A6', value= '' [1060]CopyCommonAttributes: A7=100;A8=8192;A9=0;B0=254;B1=8190;B2=0;B3=0;B4=1;B5=1;B6=0;B7=1;B8=0;B9=0;C0=0;C1=0;C2=dd_;[1060]attribute= 'A7', value= '100' [1060]CopyCommonAttributes: A7=100;A8=8192;A9=0;B0=254;B1=8190;B2=0;B3=0;B4=1;B5=1;B6=0;B7=1;B8=0;B9=0;C0=0;C1=0;C2=dd_;[1060]attribute= 'A8', value= '8192' [1060]CopyCommonAttributes: A7=100;A8=8192;A9=0;B0=254;B1=8190;B2=0;B3=0;B4=1;B5=1;B6=0;B7=1;B8=0;B9=0;C0=0;C1=0;C2=dd_;[1060]attribute= 'B0', value= '254' [1060]CopyCommonAttributes: A7=100;A8=8192;A9=0;B0=254;B1=8190;B2=0;B3=0;B4=1;B5=1;B6=0;B7=1;B8=0;B9=0;C0=0;C1=0;C2=dd_;[1060]attribute= 'B1', value= '8190' [1060]CopyCommonAttributes: A7=100;A8=8192;A9=0;B0=254;B1=8190;B2=0;B3=0;B4=1;B5=1;B6=0;B7=1;B8=0;B9=0;C0=0;C1=0;C2=dd_;[1060]attribute= 'BI', value= '0' [1060]CopyCommonAttributes: A7=100;A8=8192;A9=0;B0=254;B1=8190;B2=0;B3=0;B4=1;B5=1;B6=0;B7=1;B8=0;B9=0;C0=0;C1=0;C2=dd_;[1060]attribute= 'C2', value= 'dd_' [1060]CopyCommonAttributes: A7=100;A8=8192;A9=0;B0=254;B1=8190;B2=0;B3=0;B4=1;B5=1;B6=0;B7=1;B8=0;B9=0;C0=0;C1=0;C2=dd_[1060]attribute= 'CX', value ='1b8103ac' [1060]CopyCommonAttributes: A7=100;A8=8192;A9=0;B0=254;B1=8190;B2=0;B3=0;B4=1;B5=1;B6=0;B7=1;B8=0;B9=0;C0=0;C1=0;C2=dd_
pgsql-odbc by date: