Saturday, February 25, 2012

DBTYPE of 130 at compile time and 5 at run time

If any one can help

OLE DB provider 'MSDAORA' supplied inconsistent metadata for a column. Metadata information was changed at execution time. [SQLSTATE 42000] (Error 7356) OLE DB error trace [Non-interface error: Column 'ATP' (compile-time ordinal 1) of object '"IGS"."ABCD"' was reported to have a DBTYPE of 130 at compile time and 5 at run time]. [SQLSTATE 01000] (Error 7300). The step failed.

Thanks

www.databasetimes.net

What were you trying to do when you encountered this error?|||

Faiz Farazi wrote:

If any one can help

OLE DB provider 'MSDAORA' supplied inconsistent metadata for a column. Metadata information was changed at execution time. [SQLSTATE 42000] (Error 7356) OLE DB error trace [Non-interface error: Column 'ATP' (compile-time ordinal 1) of object '"IGS"."ABCD"' was reported to have a DBTYPE of 130 at compile time and 5 at run time]. [SQLSTATE 01000] (Error 7300). The step failed.

Thanks

I have got the same error trying to populate a table on SQL 2005 for datawarehousing purposes from a view in Oracle 9i.

I found that the problem is usually in the data type of the columns defined in the Oracle view: for example SQL 2005 doesn't like a oracle INTEGER, but if you convert the integer columns in a NUMBER the error will disappear.
The same with the Oracle VARCHAR2.

I tryed also to set the 'lazy schema validation' option using sp_serveroption as suggested here
http://www.dbforums.com/archive/index.php/t-815652.html
but it says that this option is not available in this version of SQL...|||

Hi,

I encountered the same problem.

It occured with Oracle >= 9.2.6 (w. Sql2000 and Sql2005)

In my situation, the SQL-error 7356 does not happen using the OPENQUERY-format. (select * from OPENQUERY(ORASRV, "ora-select-stmnt.....")

It only occurs on Querys in the format of "select * from ORASRV..USER.TABLE"; and thereby only; if the oracle-table has fields of type "number".

When I alter the oracle-number-fields to a more precise type of e.g. number(10), the problem is solved. So, I altered all "number" to "number(38)" (the maximal allowed number format) and the problem was bypassed.

regards

Hans

|||

Hans G. wrote:


In my situation, the SQL-error 7356 does not happen using the OPENQUERY-format. (select * from OPENQUERY(ORASRV, "ora-select-stmnt.....")


This is may be because the OPENQUERY does not perform a validation of the query you submit before execution time.

Hans G. wrote:


It only occurs on Querys in the format of "select * from ORASRV..USER.TABLE"; and thereby only; if the oracle-table has fields of type "number".

When I alter the oracle-number-fields to a more precise type of e.g. number(10), the problem is solved. So, I altered all "number" to "number(38)" (the maximal allowed number format) and the problem was bypassed.

This probably has to do with the implicit conversion that the OLE DB provider performs importing data from Oracle.
I wasn't able to translate the codes provided in the error to the corresponding datatype, but looking at "Data Type Mapping with Distributed Queries" in BOL it looks like that the NUMBER type in Oracle does not correspond to any of the DBTYPE implicitly converted to numeric(p,s)...

HTH
IgorB|||

Faiz Farazi wrote:

If any one can help

OLE DB provider 'MSDAORA' supplied inconsistent metadata for a column. Metadata information was changed at execution time. [SQLSTATE 42000] (Error 7356) OLE DB error trace [Non-interface error: Column 'ATP' (compile-time ordinal 1) of object '"IGS"."ABCD"' was reported to have a DBTYPE of 130 at compile time and 5 at run time]. [SQLSTATE 01000] (Error 7300). The step failed.

Thanks

www.databasetimes.net

MR Alam (Lascomp)

Thanks Mr Alam for your support . the link you have send to me it help my problem . Thanks gain http://www.lascomp.com

Faiz Farazi

www.databasetimes.net

|||

Thanks For all the answer-

Faiz Farazi

MCDBA,OCA,A+

www.databasetimes.net

|||

this is an pain of an error

we have it too, when converting data from Oracle 9.2 running financials across to SQL 2000 tables

"openquery" seems to work best - also we found that upgrading OLE/DB and MDAC drivers had no effect !!

also pulling the data from Visual Basic seems to work better than from SQL Server directly - which is odd ?

It appears, from reading forums, that a field defined as "TEST NUMBER" is typeless

whereas a field defined as TEST NUMBER(10,2) is not - hence ODBC or OLEDB drivers get confused as they dont know what to convert these things to.

any further comments welcome

regards

KD

|||Thaks that′s the solution I was traying for two hours really thanks!!!!

No comments:

Post a Comment