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_