This is a multi-part message in MIME format.
------_=_NextPart_001_01C83D8F.4AF118C7
Content-Type: text/plain;
charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
Hi,
I am trying to use postgres odbc driver on windows Japanese machine, to
test connection to a remote postgres database. The database has latin1
encoding.
Connection tests to databases with latin1 encoding fail with this error
message:
fatal: conversion between SJIS and LATIN1 is not supported
Connection tests to databases with utf8 encoding succeed.
I checked both server source and odbc driver source and saw that the
message comes from postgres server code.
It seems that the postgres odbc sends SJIS characters to the latin1
database and it cannot convert.
I know that the next command retrieves with the same error:
alter database <db_name> set client_encoding=3D"SJIS"
Is there any switch in the code to bypass local machine encoding?
Why does it send Japanese encoding?
Postgres odbc driver is not Japanese application. For what the
conversion is needed?
Is there any way to overcome this problem?
Steps to reproduce error message:
1. Put postgres odbc drivers (psqlodbc30a.dll and psqlodbc35w.dll) under
c:\windows\system32
2. Update machine registry with next values:
[HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBCINST.INI\ODBC Drivers]
"PostgreSQL ANSI"=3D"Installed"
"PostgreSQL Unicode"=3D"Installed"
[HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBCINST.INI\PostgreSQL ANSI]
"APILevel"=3D"1"
"ConnectFunctions"=3D"YYN"
"Driver"=3D"c:\windows\system32\PSQLODBC30A.DLL"
"DriverODBCVer"=3D"03.00"
"FileUsage"=3D"0"
"Setup"=3D" c:\windows\system32\PSQLODBC30A.DLL"
"SQLLevel"=3D"1"
"UsageCount"=3Ddword:00000001
[HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBCINST.INI\PostgreSQL Unicode]
"APILevel"=3D"1"
"ConnectFunctions"=3D"YYN"
"Driver"=3D" c:\windows\system32\PSQLODBC35W.DLL"
"DriverODBCVer"=3D"03.51"
"FileUsage"=3D"0"
"Setup"=3D" c:\windows\system32\PSQLODBC35W.DLL"
"SQLLevel"=3D"1"
"UsageCount"=3Ddword:00000001
3. Create datasource and test connection to latin1 encoding database:
Settings -> administrative tools -> data source (ODBC)
And then add system data source with postgres driver. Configure this
data source to
connect to latin1 postgres database.
Thanks,
Yuval Sofer
BMC Software
CTM&D Business Unit
DBA Team
972-52-4286-282
yuval_sofer [at] bmc.com <mailto:yuval_sofer [at] bmc.com>
Yuval Sofer
BMC Software
CTM&D Business Unit
DBA Team
972-52-4286-282
yuval_sofer [at] bmc.com
------_=_NextPart_001_01C83D8F.4AF118C7
Content-Type: text/html;
charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
<html xmlns:o=3D"urn:schemas-microsoft-com:office:office" =
xmlns:w=3D"urn:schemas-microsoft-com:office:word" =
xmlns=3D"http://www.w3.org/TR/REC-html40">
<head>
<META HTTP-EQUIV=3D"Content-Type" CONTENT=3D"text/html; =
charset=3Dus-ascii">
<meta name=3DGenerator content=3D"Microsoft Word 11 (filtered medium)">
<style>
<!--
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{margin:0in;
margin-bottom:.0001pt;
font-size:12.0pt;
font-family:"Times New Roman";}
a:link, span.MsoHyperlink
{color:blue;
text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
{color:purple;
text-decoration:underline;}
span.EmailStyle17
{mso-style-type:personal-compose;
font-family:Arial;
color:windowtext;}
[at] page Section1
{size:8.5in 11.0in;
margin:1.0in 1.25in 1.0in 1.25in;}
div.Section1
{page:Section1;}
-->
</style>
</head>
<body lang=3DEN-US link=3Dblue vlink=3Dpurple>
<div class=3DSection1>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
11.0pt;font-family:Arial;color:navy'>Hi, <o:p></o:p></span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
11.0pt;font-family:Arial;color:navy'><o:p> </o:p></span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
11.0pt;font-family:Arial;color:navy'>I am trying to use postgres odbc =
driver on
windows Japanese machine, to test connection to a remote postgres =
database. The
database has latin1 encoding. <o:p></o:p></span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
11.0pt;font-family:Arial;color:navy'><o:p> </o:p></span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
11.0pt;font-family:Arial;color:navy'>Connection tests to databases with =
latin1
encoding fail with this error message: <o:p></o:p></span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
11.0pt;font-family:Arial;color:navy'><o:p> </o:p></span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
11.0pt;font-family:Arial;color:navy'>fatal: conversion between SJIS and =
LATIN1
is not supported<o:p></o:p></span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
11.0pt;font-family:Arial;color:navy'><o:p> </o:p></span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
11.0pt;font-family:Arial;color:navy'>Connection tests to databases with =
utf8
encoding succeed.<o:p></o:p></span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
11.0pt;font-family:Arial;color:navy'><o:p> </o:p></span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
11.0pt;font-family:Arial;color:navy'>I checked both server source and =
odbc
driver source and saw that the message comes from postgres server code. =
<o:p></o:p></span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
11.0pt;font-family:Arial;color:navy'><o:p> </o:p></span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
11.0pt;font-family:Arial;color:navy'>It seems that the postgres odbc =
sends SJIS
characters to the latin1 database and it cannot =
convert.<o:p></o:p></span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
11.0pt;font-family:Arial;color:navy'>I know that the next command =
retrieves
with the same error: <o:p></o:p></span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
11.0pt;font-family:Arial;color:navy'><o:p> </o:p></span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
11.0pt;font-family:Arial;color:navy'>alter database <db_name> set
client_encoding=3D"SJIS"<o:p></o:p></span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
11.0pt;font-family:Arial;color:navy'><o:p> </o:p></span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
11.0pt;font-family:Arial;color:navy'>Is there any switch in the code to =
bypass
local machine encoding?<o:p></o:p></span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
11.0pt;font-family:Arial;color:navy'>Why does it send Japanese encoding? =
<o:p></o:p></span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
11.0pt;font-family:Arial;color:navy'>Postgres odbc driver is not =
Japanese
application. For what the conversion is needed? =
<o:p></o:p></span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
11.0pt;font-family:Arial;color:navy'>Is there any way to overcome this =
problem?
<o:p></o:p></span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
11.0pt;font-family:Arial;color:navy'><o:p> </o:p></span></font></p>
<p class=3DMsoNormal><u><font size=3D2 color=3Dnavy face=3DArial><span
style=3D'font-size:11.0pt;font-family:Arial;color:navy'>Step s to =
reproduce error
message: <o:p></o:p></span></font></u></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
11.0pt;font-family:Arial;color:navy'><o:p> </o:p></span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
11.0pt;font-family:Arial;color:navy'>1. Put postgres odbc drivers
(psqlodbc30a.dll and psqlodbc35w.dll) under =
c:\windows\system32<o:p></o:p></span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
11.0pt;font-family:Arial;color:navy'><o:p> </o:p></span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
11.0pt;font-family:Arial;color:navy'>2. Update machine registry with =
next
values: <o:p></o:p></span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
11.0pt;font-family:Arial;color:navy'>[HKEY_LOCAL_MACHINE\SOF TWARE\ODBC\OD=
BCINST.INI\ODBC
Drivers]<o:p></o:p></span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
11.0pt;font-family:Arial;color:navy'>"PostgreSQL
ANSI"=3D"Installed"<o:p></o:p></span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
11.0pt;font-family:Arial;color:navy'>"PostgreSQL
Unicode"=3D"Installed"<o:p></o:p></span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
11.0pt;font-family:Arial;color:navy'><o:p> </o:p></span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
11.0pt;font-family:Arial;color:navy'>[HKEY_LOCAL_MACHINE\SOF TWARE\ODBC\OD=
BCINST.INI\PostgreSQL
ANSI]<o:p></o:p></span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
11.0pt;font-family:Arial;color:navy'>"APILevel"=3D"1"=
<o:p></o:p></span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
11.0pt;font-family:Arial;color:navy'>"ConnectFunctions"=3D"=
;YYN"<o:p></o:p></span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
11.0pt;font-family:Arial;color:navy'>"Driver"=3D"c:\window=
s\system32\PSQLODBC30A.DLL"<o:p></o:p></span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
11.0pt;font-family:Arial;color:navy'>"DriverODBCVer"=3D"03=
..00"<o:p></o:p></span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
11.0pt;font-family:Arial;color:navy'>"FileUsage"=3D"0"=
;<o:p></o:p></span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
11.0pt;font-family:Arial;color:navy'>"Setup"=3D"
c:\windows\system32\PSQLODBC30A.DLL"<o:p></o:p></span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
11.0pt;font-family:Arial;color:navy'>"SQLLevel"=3D"1"=
<o:p></o:p></span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
11.0pt;font-family:Arial;color:navy'>"UsageCount"=3Ddword:00000=
001<o:p></o:p></span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
11.0pt;font-family:Arial;color:navy'><o:p> </o:p></span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
11.0pt;font-family:Arial;color:navy'>[HKEY_LOCAL_MACHINE\SOF TWARE\ODBC\OD=
BCINST.INI\PostgreSQL
Unicode]<o:p></o:p></span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
11.0pt;font-family:Arial;color:navy'>"APILevel"=3D"1"=
<o:p></o:p></span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
11.0pt;font-family:Arial;color:navy'>"ConnectFunctions"=3D"=
;YYN"<o:p></o:p></span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
11.0pt;font-family:Arial;color:navy'>"Driver"=3D"
c:\windows\system32\PSQLODBC35W.DLL"<o:p></o:p></span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
11.0pt;font-family:Arial;color:navy'>"DriverODBCVer"=3D"03=
..51"<o:p></o:p></span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
11.0pt;font-family:Arial;color:navy'>"FileUsage"=3D"0"=
;<o:p></o:p></span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
11.0pt;font-family:Arial;color:navy'>"Setup"=3D"
c:\windows\system32\PSQLODBC35W.DLL"<o:p></o:p></span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
11.0pt;font-family:Arial;color:navy'>"SQLLevel"=3D"1"=
<o:p></o:p></span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
11.0pt;font-family:Arial;color:navy'>"UsageCount"=3Ddword:00000=
001<o:p></o:p></span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
11.0pt;font-family:Arial;color:navy'><o:p> </o:p></span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
11.0pt;font-family:Arial;color:navy'>3. Create datasource and test =
connection
to latin1 encoding database: <o:p></o:p></span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
11.0pt;font-family:Arial;color:navy'>Settings -> administrative tools =
->
data source (ODBC) <o:p></o:p></span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
11.0pt;font-family:Arial;color:navy'>And then add system data source =
with
postgres driver. Configure this data source to =
<o:p></o:p></span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
11.0pt;font-family:Arial;color:navy'>connect to latin1 postgres =
database.<o:p></o:p></span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
11.0pt;font-family:Arial;color:navy'><o:p> </o:p></span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
11.0pt;font-family:Arial;color:navy'>Thanks, =
<o:p></o:p></span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
11.0pt;font-family:Arial;color:navy'><o:p> </o:p></span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
11.0pt;font-family:Arial;color:navy'>Yuval Sofer<br>
BMC Software<br>
CTM&D Business Unit<o:p></o:p></span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
11.0pt;font-family:Arial;color:navy'>DBA Team<br>
972-52-4286-282<br>
<a href=3D"mailto:yuval_sofer [at] bmc.com" =
title=3D"mailto:yuval_sofer [at] bmc.com"><font
color=3Dnavy title=3D"mailto:yuval_sofer [at] bmc.com"><span
title=3D"mailto:yuval_sofer [at] bmc.com"><span =
style=3D'color:navy'>yuval_sofer [at] bmc.com</span></span></font></a><o:p></o=
:p></span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
11.0pt;font-family:Arial;color:navy'><o:p> </o:p></span></font></p>
<p class=3DMsoNormal><font size=3D2 face=3DArial><span =
style=3D'font-size:10.0pt;
font-family:Arial'><o:p> </o:p></span></font></p>
<p class=3DMsoNormal><font size=3D2 face=3DArial><span =
style=3D'font-size:10.0pt;
font-family:Arial'><o:p> </o:p></span></font></p>
<p class=3DMsoNormal><font size=3D2 face=3DArial><span =
style=3D'font-size:10.0pt;
font-family:Arial'>Yuval Sofer<br>
BMC Software<br>
CTM&D Business Unit</span></font><o:p></o:p></p>
<p class=3DMsoNormal><font size=3D2 face=3DArial><span =
style=3D'font-size:10.0pt;
font-family:Arial'>DBA Team<br>
972-52-4286-282<br>
<a =
href=3D"mailto:yuval_sofer [at] bmc.com">yuval_sofer [at] bmc.com</a></span></font>=
<font
size=3D2 face=3DArial><span =
style=3D'font-size:10.0pt;font-family:Arial'><o:p></o:p></span></font></p=
>
<p class=3DMsoNormal><font size=3D3 face=3D"Times New Roman"><span =
style=3D'font-size:
12.0pt'><o:p> </o:p></span></font></p>
</div>
</body>
</html>
------_=_NextPart_001_01C83D8F.4AF118C7--
