链接服务器查询无法正常工作

时间:2012-01-24 07:30:48

标签: sql sql-server sql-server-2000

如何创建链接服务器查询

Server1名称为Server,表名为Employee Server2名称为RAPAN,表名为Venus

我想通过server1选择一个venus表(server2)。

如何通过查询

执行此操作

尝试查询

EXEC sp_addlinkedserver 
   @server = 'server', 
   @srvproduct = '',
   @provider = 'SQLOLEDB', 
   @datasrc = 'RAPAN'
GO

查询已成功执行,但当它尝试通过server1 select * from venus时,错误为invalid object name

我的查询有什么问题......

1 个答案:

答案 0 :(得分:1)

  • 您应该将登录映射添加到此服务器
  • 您应该使用完整的命名惯例进行查询,例如SELECT * FROM server1.RAPAN.dbo.venus

添加链接服务器使用(并根据需要使用选项):

EXEC sys.sp_addlinkedserver @server = 'RAPAN', @srvproduct = 'SQL Server'

设置可选选项

EXEC sys.sp_serveroption @server = 'RAPAN', @optname = 'collation compatible', @optvalue = 'On'
EXEC sys.sp_serveroption @server = 'RAPAN', @optname = 'data access', @optvalue = 'On'
EXEC sys.sp_serveroption @server = 'RAPAN', @optname = 'lazy schema validation', @optvalue = 'On' 
EXEC sys.sp_serveroption @server = 'RAPAN', @optname = 'rpc', @optvalue = 'On'
EXEC sys.sp_serveroption @server = 'RAPAN', @optname = 'rpc out', @optvalue = 'On'

添加登录(And read more)

EXEC sys.sp_addlinkedsrvlogin @rmtsrvname = 'RAPAN'