Notice: This website is an unofficial Microsoft Knowledge Base (hereinafter KB) archive and is intended to provide a reliable access to deleted content from Microsoft KB. All KB articles are owned by Microsoft Corporation. Read full disclaimer for more details.

The UPDATE/DELETE Statement from SQL Linked Server Does Not Succeed on Special Characters


View products that this article applies to.

This article was previously published under Q327892

↑ Back to the top


Symptoms

When you use a linked server in SQL Server with the OLE DB provider for DB2 (DB2OLEDB), the UPDATE/DELETE statement does not succeed if special characters are included in either the name of the library (or collection), or in the table name. These special characters include the "at" symbol (@), the "pound or sharp" symbol (#), and the dollar sign ($).

This problem does not occur with SELECT/INSERT statements.

You may experience this problem when you use either four-part naming or OPENQUERY syntax. An UPDATE/DELETE statement against the same library (collection) or table is successful from a standard ADO application outside SQL Server.

When you try to perform an update from Query Analyzer, you receive the following error message:
Server: Msg 7399, Level 16, State 1, Line 1 OLE DB provider 'DB2OLEDB' reported an error. [OLE/DB provider returned message: Insufficient base table information for updating or refreshing.]
When you try to perform a delete from Query Analyzer, you receive the following error message:
Server: Msg 7345, Level 16, State 1, Line 1 OLE DB provider 'DB2OLEDB' could not delete from table 'CATALOGNAME.LIB$NAME.TABLENAME'. There was a recoverable, provider-specific error, such as an RPC failure. [OLE/DB provider returned message: Insufficient base table information for updating or refreshing.]
A SQL Profiler trace of this problem lists the following error:
OLE/DB Provider 'DB2OLEDB' IRowsetChange::SetData returned 0x80004005

↑ Back to the top


Status

Microsoft has confirmed that this is a problem in Microsoft Host Integration Server 2000 SP1.

↑ Back to the top


More information

For additional information about OLE DB Provider for DB2 and linked servers, click the article numbers below to view the articles in the Microsoft Knowledge Base:
287093� INFO: DB2OLEDB Supports UPDATE/DELETE from SQL Linked Server
218590� INF: Configuring Data Sources for the Microsoft OLE DB Provider
222937� INF: Creating a Linked Server to DB2 using Microsoft OLE DB Provider for DB2

↑ Back to the top


Keywords: KB327892, kbnofix, kbbug

↑ Back to the top

Article Info
Article ID : 327892
Revision : 2
Created on : 4/22/2005
Published on : 4/22/2005
Exists online : False
Views : 397