This article has been archived. It is offered "as is" and will no longer be updated.
In Microsoft Host Integration Server, you may receive an error message that is similar to the following when you issue an SQL query statement:
Server: Msg 7356,Level 16,State 1,Line 1 OLE DB provider 'Provider Name' supplied inconsistent metadata for a column. Metadata information was changed at execution time. OLE DB error trace [Non-interface error: Column 'columnID' (compile-time ordinal 5) of object ' SQL_instance.Database_name.table_name ' was reported to have a DBTYPE of 128 at compile time and 129 at run time].
This behavior occurs if the following conditions are true:
You issue a four-part SQL query statement against an IBM DB2 table.
The DB2 table contains a column that has a user-defined data type.
Host Integration Server data providers do not support user-defined data types.
To work around this behavior, use one of the following methods:
Add the following property to the provider connection string:
"Use Early Metadata=True"
This connection string property forces the provider to use the metadata at prepare time or at compile time. However, this method might not work if the data type changes.
Export the data from DB2 to a text file, and then use SQL Data Transformation Services to load the data into the Microsoft SQL Server database.
This behavior is by design.
The third-party products that this article discusses are manufactured by companies that are independent of Microsoft. Microsoft makes no warranty, implied or otherwise, regarding the performance or reliability of these products.