Still celebrating National IT Professionals Day with 3 months of free Premium Membership. Use Code ITDAY17

x
?
Solved

Table Does Not Exist Linked Server 2000 to 2005

Posted on 2014-03-23
6
Medium Priority
?
835 Views
Last Modified: 2014-04-01
I have two servers, a SQL 2000 and a SQL 2005 and need to have them be linked to each other.  2005 is linked successfully to 2000 and can query from various databases on it.  2000 is linked successfully but can only query data from Master database, not other databases.  If I try and query from another database I get the following:

Server: Msg 7314, Level 16, State 1, Line 1
OLE DB provider 'APPSQL1' does not contain table '"IERP86US"."dbo"."Item"'.  The table either does not exist or the current user does not have permissions on that table.
OLE DB error trace [Non-interface error:  OLE DB provider does not contain the table: ProviderName='APPSQL1', TableName='"IERP86US"."dbo"."Item"'].

Both servers are using sa logon and have same settings.
0
Comment
Question by:andersonpower
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 3
  • 2
6 Comments
 
LVL 143

Assisted Solution

by:Guy Hengel [angelIII / a3]
Guy Hengel [angelIII / a3] earned 750 total points
ID: 39949830
with SA login it will indeed be difficult to run into permission issues.
so, the other things I can think of are:
* using [ ] instead of  " " might help
* case sensitivity issues, check the collation of the 2 servers/databases etc ...
* typos  (like I <> l  <> 1 ) spaces etc ...
* you are NOT connected to the right server or instance
0
 
LVL 40

Accepted Solution

by:
lcohan earned 750 total points
ID: 39957265
"2000 is linked successfully but can only query data from Master database, not other databases"

So you run a query from SQL 2000 against SQL 2005?
Did you created a Linked server on SQL 2000 TO SQL 2005 and one linked Server on SQL 2005 TO SQL 2000?

Is not quite clear from "2005 is linked successfully to 2000 and can query from various databases on it.  2000 is linked successfully ..." to what?


Also, in your direct queries you must use FULL (four) name qualifier like:

 LinkedServerNameHere.IERP86US.dbo.Item

right?
0
 

Author Comment

by:andersonpower
ID: 39958929
Sorry, yes, both servers have a link to each other.  

I can query using the full name from 2005 server to 2000 server database tables successfully.  

I can ONLY query tables in the master database going from the 2000 to 2005 server.

But this 2000 server is connect to a DIFFERENT 2005 server and can query tables from that server's database fine.  That one is using a MediaCatalogDB OLE DB Provider setup.

If I try to recreate link to the 2005 server I need to connect to using MediaCatalogDB OLD DB Provider instead of Microsoft OLE DB Provider for SQL Server I get the following error message:

Could not initialize data source object of OLE DB provider 'MediaCatalogDB.11'.
OLE DB error trace [OLE/DB Provider 'MediaCatalogDB.11' IDBInitialize::Initialize returned 0x80030003].
0
Moving data to the cloud? Find out if you’re ready

Before moving to the cloud, it is important to carefully define your db needs, plan for the migration & understand prod. environment. This wp explains how to define what you need from a cloud provider, plan for the migration & what putting a cloud solution into practice entails.

 

Author Comment

by:andersonpower
ID: 39969555
I recreated the linked server using my SQL 2008 management tools and now if I can query some tables if they don't have indexes, but the tables that DO have indexes return the following error:

OLE DB provider 'SQLOLEDB' returned a 'NON-CLUSTERED and NOT INTEGRATED' index 'IX_IMA_CustItemID' with incorrect bookmark ordinal 0.
OLE DB error trace [Non-interface error:  OLE/DB provider returned an invalid bookmark ordinal from the index rowset.].
0
 
LVL 40

Expert Comment

by:lcohan
ID: 39969624
"I recreated the linked server using my SQL 2008 management tools"....linked server from where to where and what provider was it used? That's where you should find the answer to your question - some  providers can be configured or you can add specifics  to the connection string - just try script it from SQL SSMS and see what I'm talking about.
0
 

Author Comment

by:andersonpower
ID: 39969977
I had to go into the SQLOLEDB provider and remove the "Index as access path".  It just took me a while to figure out where to go to update the providers on the SQL 2000 server.
0

Featured Post

What is SQL Server and how does it work?

The purpose of this paper is to provide you background on SQL Server. It’s your self-study guide for learning fundamentals. It includes both the history of SQL and its technical basics. Concepts and definitions will form the solid foundation of your future DBA expertise.

Question has a verified solution.

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

It is possible to export the data of a SQL Table in SSMS and generate INSERT statements. It's neatly tucked away in the generate scripts option of a database.
When trying to connect from SSMS v17.x to a SQL Server Integration Services 2016 instance or previous version, you get the error “Connecting to the Integration Services service on the computer failed with the following error: 'The specified service …
Via a live example, show how to extract information from SQL Server on Database, Connection and Server properties
Viewers will learn how the fundamental information of how to create a table.

722 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