Solved

Inconsistent metadata for a column

Posted on 2009-06-29
9
955 Views
Last Modified: 2012-06-27
I am selecting a lview from an Oracle server over a LInked server via SQL and I get this error and cannot seem to get around it.  Can't find any info on google.

Msg 7356, Level 16, State 1, Line 8
The OLE DB provider "MSDAORA" for linked server "SIDPERS" supplied inconsistent metadata for a column. The column "AUTH" (compile-time ordinal 6) of object ""SIDPERS"."MNLOCAL_ACN_AUTH"" was reported to have a "DBTYPE" of 130 at compile time and 5 at run time.


Select	RSC6,
	UPC,
	PARA,
	LINE,
	DMOS,
	AUTH,
	OS
FROM	SIDPERS..SIDPERS.MNLOCAL_ACN_AUTH

Open in new window

0
Comment
Question by:kdeutsch
  • 4
  • 4
9 Comments
 
LVL 143

Expert Comment

by:Guy Hengel [angelIII / a3]
ID: 24739884
I usually avoid the 4-name syntax for oracle -linked server, and only use the openquery syntax.
alternatively, I create a view on the oracle side, making sure datetime/timestamp is converted to varchar2, for example.
0
 
LVL 15

Accepted Solution

by:
mohan_sekar earned 500 total points
ID: 24739899
0
 

Author Comment

by:kdeutsch
ID: 24748047
The query is already being provided by a view on Oracle, Mohan Seekar reference to articles made us change some variables in Oracle to meet SQL needs.
0
Free learning courses: Active Directory Deep Dive

Get a firm grasp on your IT environment when you learn Active Directory best practices with Veeam! Watch all, or choose any amount, of this three-part webinar series to improve your skills. From the basics to virtualization and backup, we got you covered.

 
LVL 143

Expert Comment

by:Guy Hengel [angelIII / a3]
ID: 24749438
>Mohan Seekar reference to articles made us change some variables in Oracle
would you might to clarify what exactly you changed?
as I have the same problem, using the workaround with openquery, I would love to know what you did...
0
 

Author Comment

by:kdeutsch
ID: 24757112
Yes, as soon as i get ahold of my Oracle person, what he told me was that he changed the field values in the Oracle table to match those of SQL.  But I will get specifics and let you know.
0
 

Author Comment

by:kdeutsch
ID: 24762925
angelIII,
In talking with my Oracle person he siad there are variable numeric type in oracle that when queried by MS SQL, SQL cannot find the length of the variable so it throws the error.  The wayt o get around this is to change the variable numeric types to varchars and then reconvert to do math in sql.  Hope that helps
0
 
LVL 143

Expert Comment

by:Guy Hengel [angelIII / a3]
ID: 24763002
>The wayt o get around this is to change the variable numeric types to varchars and then reconvert to do math in sql.  

so, no improvement what I already have and what I suggested in my first comment:
>alternatively, I create a view on the oracle side, making sure datetime/timestamp is converted to varchar2, for example.
0
 

Author Comment

by:kdeutsch
ID: 24763237
ah yes, my mistake, and does need to be corrected to award you points.  if you want to oject that is fine with me and then I can award points.
0
 
LVL 143

Expert Comment

by:Guy Hengel [angelIII / a3]
ID: 24763444
na, it's ok for me. just wanted it to be clarified, as I really hoped you had something I did not know!
0

Featured Post

Optimizing Cloud Backup for Low Bandwidth

With cloud storage prices going down a growing number of SMBs start to use it for backup storage. Unfortunately, business data volume rarely fits the average Internet speed. This article provides an overview of main Internet speed challenges and reveals backup best practices.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

'Between' is such a common word we rarely think about it but in SQL it has a very specific definition we should be aware of. While most database vendors will have their own unique phrases to describe it (see references at end) the concept in common …
Confronted with some SQL you don't know can be a daunting task. It can be even more daunting if that SQL carries some of the old secret codes used in the Ye Olde query syntax, such as: (+)     as used in Oracle;     *=     =*    as used in Sybase …
This video explains at a high level with the mandatory Oracle Memory processes are as well as touching on some of the more common optional ones.
This video shows how to copy a database user from one database to another user DBMS_METADATA.  It also shows how to copy a user's permissions and discusses password hash differences between Oracle 10g and 11g.

809 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question