Microsoft KB Archive/222104

= PRB: "Optional feature not implemented" or "#name" in SQL Server 7.0 =

Article ID: 222104

Article Last Modified on 12/5/2003

-

APPLIES TO


 * Microsoft ODBC Driver for Microsoft SQL Server 3.0
 * Microsoft ODBC Driver for Microsoft SQL Server 3.5
 * Microsoft ODBC Driver for Microsoft SQL Server 3.6
 * Microsoft SQL Server 7.0 Standard Edition
 * Microsoft Data Access Components 2.5

-



This article was previously published under Q222104



SYMPTOMS
When you try to update SQL Server 7.0 tables that contain Unicode datatypes from Access 97 or Access 95 using the 3.60.0319 (or earlier) version of the ODBC SQLServer driver, the following error message appears:

[Microsoft][ODBC SQLServer Driver]"Optional feature not implemented"



CAUSE
Access tries to bind the parameter for the Unicode column, asking the driver to convert from SQL_CHAR/SQL_VARCHAR to SQL_WCHAR/SQL_WVARCHAR. This functionality is not available in the 3.60.xxxx or the previous versions of the SQL Server ODBC Driver.



RESOLUTION
Use SQL Server ODBC Driver version 3.70.0623 or later when you use Access 97 or Access 95 to connect to SQL Server 7.0.



STATUS
This behavior is by design.



MORE INFORMATION
Access 97 and Access 95 make calls to the catalog API in ODBC, such as SQLTables, SQLColumns, and so forth. These APIs return the datatypes as SQL_WVARCHAR/SQL_WCHAR, and so forth, depending on the actual Unicode datatype in the SQLServer datatypes. Then Access calls SQLBindParameter, requesting conversion to Unicode data in the driver. This feature is not implemented in the 3.60.xxxx version of the SQL Server ODBC Driver.

Avoid using the ntext datatype, even when using the 3.70.xxxx version of the driver, because Access does not recognize this datatype and can cause the #name or #error error.

Steps to Reproduce Behavior
  Create a table in SQL Server 7.0 using Unicode datatypes. For example: create table unicode_test( col1 int PRIMARY KEY, col2 nvarchar(10), col3 nchar(10))

insert into unicode_test values (1,N'test',N'test') insert into unicode_test values (2,N'test',N'test')  Open Access 97 or Access 95. Create a link to the table that you created in the step 1. Open the linked table. Modify any of the columns and try to save the record.

Additional query words: #name, #error, Unicode

Keywords: kbdatabase kbprb kbfaq KB222104

-

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

© Microsoft Corporation. All rights reserved.