468,107 Members | 1,302 Online
Bytes | Developer Community
New Post

Home Posts Topics Members FAQ

Post your question to a community of 468,107 developers. It's quick & easy.

isql / osql / Windows XP / disable "Automatic ANSI to OEM conversion"

Hello to all SQL Server junkies who work with non-English characters:

For people running scripts from the command line using ANSI files with
special characters, it is very important to use isql and disable
"Automatic ANSI to OEM conversion":
- This only affects isql from the command line, and no gui
applications
- http://support.microsoft.com/?scid=kb;EN-US;153449
- Start the "Client Network Utility"
C:\WINDOWS\system32\cliconfg.exe
- Select the DB-Library Tab
- Deselect "Automatic ANSI to OEM conversion"
- Click OK or Apply

Or inject this registry entry:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\ Client\DB-Lib]
"AutoAnsiToOem"="OFF"

Here are some useful lines from a batch script to query the current
value of the registry and reset if necessary. This is tested on
Windows XP. It will query the registry, throw away the first three
lines of output, and return the value of the third field on the fourth
line. Delims lists one tab character and one space character. Type the
following all on one line:

@FOR /F "SKIP=3 TOKENS=3 DELIMS= " %%A IN ('REG QUERY
HKLM\SOFTWARE\Microsoft\MSSQLServer\Client\DB-Lib /v AutoAnsiToOem') DO
@SET AUTOANSITOOEM=%%A

Type the "reg add" line all on one line:

@IF /i "%AUTOANSITOOEM%" EQU "ON" (
@ECHO
************************************************** **********************
@ECHO ****
@ECHO **** We need to disable "Automatic ANSI to OEM conversion"
@ECHO **** Please see
http://support.microsoft.com/?scid=kb;EN-US;153449
@ECHO **** This only affects isql from the command line
@ECHO ****
@ECHO
************************************************** **********************
@REM
REG ADD HKLM\SOFTWARE\Microsoft\MSSQLServer\Client\DB-Lib /v
AutoAnsiToOem /t REG_SZ /d OFF
)

Alternatively, you must use Unicode script files and osql.

PS: Thank you to Erland Sommarskog for http://www.sommarskog.se and Rob
van der Woude for http://www.robvanderwoude.com

Jan 13 '06 #1
1 10577
Within the FOR command use SKIP=2 on Windows Server 2003

Philip Bondi wrote:
Hello to all SQL Server junkies who work with non-English characters:

For people running scripts from the command line using ANSI files with
special characters, it is very important to use isql and disable
"Automatic ANSI to OEM conversion":
- This only affects isql from the command line, and no gui
applications
- http://support.microsoft.com/?scid=kb;EN-US;153449
- Start the "Client Network Utility"
C:\WINDOWS\system32\cliconfg.exe
- Select the DB-Library Tab
- Deselect "Automatic ANSI to OEM conversion"
- Click OK or Apply

Or inject this registry entry:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\ Client\DB-Lib]
"AutoAnsiToOem"="OFF"

Here are some useful lines from a batch script to query the current
value of the registry and reset if necessary. This is tested on
Windows XP. It will query the registry, throw away the first three
lines of output, and return the value of the third field on the fourth
line. Delims lists one tab character and one space character. Type the
following all on one line:

@FOR /F "SKIP=3 TOKENS=3 DELIMS= " %%A IN ('REG QUERY
HKLM\SOFTWARE\Microsoft\MSSQLServer\Client\DB-Lib /v AutoAnsiToOem') DO
@SET AUTOANSITOOEM=%%A

Type the "reg add" line all on one line:

@IF /i "%AUTOANSITOOEM%" EQU "ON" (
@ECHO
************************************************** **********************
@ECHO ****
@ECHO **** We need to disable "Automatic ANSI to OEM conversion"
@ECHO **** Please see
http://support.microsoft.com/?scid=kb;EN-US;153449
@ECHO **** This only affects isql from the command line
@ECHO ****
@ECHO
************************************************** **********************
@REM
REG ADD HKLM\SOFTWARE\Microsoft\MSSQLServer\Client\DB-Lib /v
AutoAnsiToOem /t REG_SZ /d OFF
)

Alternatively, you must use Unicode script files and osql.

PS: Thank you to Erland Sommarskog for http://www.sommarskog.se and Rob
van der Woude for http://www.robvanderwoude.com


Jan 18 '06 #2

This discussion thread is closed

Replies have been disabled for this discussion.

Similar topics

2 posts views Thread by George Durzi | last post: by
5 posts views Thread by Hayato Iriumi | last post: by
4 posts views Thread by Philip Nelson | last post: by
8 posts views Thread by Simon Klein | last post: by
1 post views Thread by Solo | last post: by
By using this site, you agree to our Privacy Policy and Terms of Use.