Microsoft KB Archive/167051

= PRB: Problems When DBCS Code Page Is Missing in Windows NT =

Article ID: 167051

Article Last Modified on 11/21/2003

-

APPLIES TO


 * Microsoft SQL Server 6.0 Standard Edition
 * Microsoft SQL Server 6.5 Standard Edition

-



This article was previously published under Q167051



SYMPTOMS
If SQL Server was installed with a double-byte character set (DBCS) code page (such as cp-932, cp-936, cp-949, or cp-950) and you used a dictionary order case-insensitive sort order, you may experience either of the following problems when running "use PUBS" or other case-sensitive operations:

Msg 911, Level 16, State 2

Attempt to locate entry in Sysdatabases for database 'PUBS' by name

failed - no entry found under that name. Make sure that name is entered

properly.

-or-

An "Unknown Character Set" error when running "sp_helpsort."



CAUSE
This problem occurs when the specific DBCS code page is not installed on the computer running Windows NT Server.



WORKAROUND
There are two possible workarounds for this problem.

Method One: If you are using Windows NT Server 3.51 or Windows NT Server 4.0, you can add the code page manually.

WARNING: Using Registry Editor incorrectly can cause serious, system-wide problems that may require you to reinstall Windows NT to correct them. Microsoft cannot guarantee that any problems resulting from the use of Registry Editor can be solved. Use this tool at your own risk.

 Log on to Windows NT Server to an account with Administrator privilege. Copy the code page file to the %SystemRoot%\System32 directory.  Start the Registry Editor (Regedt32.exe) and locate the following HKEY_LOCAL_MACHINE subtree:

     System\CurrentControlSet\Control\Nls\CodePage

 On the Edit menu, click Add Value.  Enter the following values:

     Value Name: (for example, 950) Data Type: REG_SZ String: (for example, C_950.NLS)

</li>  Locate the following HKEY_LOCAL_MACHINE subtree:

<pre class="fixed_text">     System\CurrentControlSet\Control\Nls\Language

</li> On the Edit menu, click Add Value.</li>  Enter the following values:

<pre class="fixed_text">     Value Name: <locale-specific code page ID> (for example, 0404 for      code page 950; see the MORE INFORMATION section of this article) Data Type: REG_SZ String: l_intl.nls

</li> Quit Registry Editor.</li> Shut down and restart the computer running Windows NT Server.</li> Rebuild the SQL Server master database with the desired DBCS code page.</li></ol>

Method Two: If you are using Windows NT Server 4.0, you can add a code page by using an .inf script.


 * 1) Log on to Windows NT Server to an account with Administrator privilege.
 * 2) Start the Windows NT Explorer.
 * 3) Insert the Windows NT Server 4.0 compact disc.
 * 4) In the Langpack directory, locate the .inf file named appropriately for the language.
 * 5) Right-click the .inf file that you want to add support for.
 * 6) Click Install on the context menu.
 * 7) Shut down and restart the computer running Windows NT Server when it has completed adding the language.
 * 8) Rebuild the SQL Server master database with the desired DBCS code page.

<div class="moreinformation_section">

MORE INFORMATION
The following is the locale-specific code page information that is required in method one above:

<pre class="fixed_text">Locale                  LCID    Code Page -- Chinese (PRC)           0x0804     936 Chinese (Taiwan)        0x0404     950 Chinese (Hong Kong SAR) 0x0c04     950 Chinese (Singapore)     0x1004     936 Japanese                0x0411     932 Korean                  0x0412     949

Additional query words: JIS Wansung Johab Hangul KB BIG-5

Keywords: kbinterop kbenv kbprb KB167051

-

[mailto:TECHNET@MICROSOFT.COM Send feedback to Microsoft]

© Microsoft Corporation. All rights reserved.