Solved

Linked Server / Inconsistent Metadata

Posted on 2005-02-09
2,495 Views
Last Modified: 2012-05-05
I've been getting the following error when attempting to do a 4 part query against my Linked server:

     Server: Msg 7353
     OLE DB provider 'MSDASQL' supplied inconsistent metadata.  An extra column was supplied during execution that was not found at compile time.

The error message then lists the offending field.  

I've dropped and recreated the linked server.  
One more interesting note:  If I create a view that references that linked table such as:

     Create view vPV_SOrder as Select * from OpenQuery(ServerName, 'Select * from PV_SOrder')

and then do a select on that view (Select * from vPV_SOrder), I will not get the error.

Is a 'rebuild' of the schema necessary on the Linked Server side?  SQL Server side?

This table was modified with the additional table, but there were also many other tables that had fields modified that do not return the error.

Thanks for any help.

Bill
0
Question by:bwarneke
    7 Comments
     
    LVL 34

    Accepted Solution

    by:
    Couple things, of course, dropping and recreating the link should resolve the problem, you can also change the "lazy schema" validation:

    sp_serveroption 'Your Server Name', 'lazy schema validation', false



    Brett
    0
     
    LVL 3

    Assisted Solution

    by:Terryute68
    bwarneke,

    I also remember this to be a bug. The fix at the time was to create a view just as you did.
    Here is an article that may help you fix the problem.

    http://www.sqlservercentral.com/columnists/jtravis/changingcolumn.asp

    0
     

    Author Comment

    by:bwarneke
    Thanks arbert.  I forgot to mention that I had attempted the sp_serveroption setting.  If I set the value to true, I get the following (confusing!) message:

         The 'lazy schema validation' option is ignored in this edition of SQL Server.

    We are running SQL 2000 Standard Edition.  Is it available only to Enterprise edition?


    0
     

    Author Comment

    by:bwarneke
    Thanks for the post Terryute68.  

    That looks like it would work for me.  It looks like the script needs to be run against the source DB.  But, my source data is a Progress DB.  I will check their KB to see if something similar is possible.

    Thanks.

    Bill
    0
     
    LVL 34

    Expert Comment

    by:arbert
    Ouch, that shows updating the system tables anyway--not a good idea.  Did you try to drop and recreate the linked server?
    0
     

    Author Comment

    by:bwarneke
    Yes.  Same results.
    0
     

    Author Comment

    by:bwarneke
    The issue is with the Progress DB.  The syscolumns table has an ID field.  There is a gap in the sequence.  This causes the error from SQL Server.

    There is a fix.  Drop and re-create the offending table.  The ID fields will be ordered properly when the table is re-created.
    0

    Write Comment

    Please enter a first name

    Please enter a last name

    We will never share this with anyone. Privacy Policy Terms of Use

    Featured Post

    Free Trending Threat Insights Every Day

    Enhance your security with threat intelligence from the web. Get trending threat insights on hackers, exploits, and suspicious IP addresses delivered to your inbox with our free Cyber Daily.

    Having an SQL database can be a big investment for a small company. Hardware, setup and of course, the price of software all add up to a big bill that some companies may not be able to absorb.  Luckily, there is a free version SQL Express, but does …
    Everyone has problem when going to load data into Data warehouse (EDW). They all need to confirm that data quality is good but they don't no how to proceed. Microsoft has provided new task within SSIS 2008 called "Data Profiler Task". It solve th…
    Familiarize people with the process of retrieving data from SQL Server using an Access pass-thru query. Microsoft Access is a very powerful client/server development tool. One of the ways that you can retrieve data from a SQL Server is by using a pa…
    Via a live example combined with referencing Books Online, show some of the information that can be extracted from the Catalog Views in SQL Server.

    693 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

    Need Help in Real-Time?

    Connect with top rated Experts

    24 Experts available now in Live!

    Get 1:1 Help Now