Symptoms

When you use the OLE DB Provider for DB2 to perform a four-part name query against an IBM DB2 for z/OS V10 database that contains Large Object (LOB) data types, you receive an error message that resembles the following:

The OLE DB provider "DB2OLEDB" for linked server "linked server name" supplied inconsistent metadata. The object "catalog"."schema_name"."table_name" was missing the expected column "column_name".

Note This error message does not occur when the same query is issued by using an OpenQuery format. 

Cause

The OLE DB Provider for DB2 issues queries to obtain the metadata for the DB2 table that's being queried from SYSIBM.SYSCOLUMNS when four-part name queries are used. However, the schema query that's issued by the OLE DB Provider for DB2 returns hidden columns. This triggers the error when the DB2 table includes LOB data types.

Resolution

Cumulative update information

The fix that resolves this problem is included in Cumulative Update 2 for Host Integration Server 2013.

Workaround

To work around this problem, issue the failing four-part name query by using an OpenQuery format. This prevents the error.

Status

Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section.

More Information

After you apply this update, the OLE DB Provider for DB2 excludes hidden columns when it issues schema queries against SYSIBM.SYSCOLUMNS.

The third-party products that this article discusses are manufactured by companies that are independent of Microsoft. Microsoft makes no warranty, implied or otherwise, about the performance or reliability of these products.

Need more help?

Want more options?

Explore subscription benefits, browse training courses, learn how to secure your device, and more.

Communities help you ask and answer questions, give feedback, and hear from experts with rich knowledge.