0

我有一个看起来像这样的查询:

select tb1.col1, tb1.col2, tb2.col4, tb2.col7
from server_1.database_a.dbo.table_1 tbl1
inner join server_2.database_c.dbo.table_2 tbl2 on tbl1.col_id = tbl2.col_id

当我从Microsoft SQL Server Management Studio. 但是当我尝试创建一个每天执行一次此查询的 sql 作业时,我收到以下错误消息并且查询不执行

以用户身份执行:NT AUTHORITY\SYSTEM。对象名称“server_1.database_a.dbo.table_1”包含的前缀数量超过了最大数量。最大值为 2。[SQLSTATE 42000](错误 117)。步骤失败。

4

3 回答 3

1

尝试一下:

use database_a;
select tb1.col1, tb1.col2, tb2.col4, tb2.col7
from dbo.table_1 tbl1
inner join server_2.database_c.dbo.table_2 tbl2 on tbl1.col_id = tbl2.col_id
于 2013-12-09T16:42:58.140 回答
0

server_1.database_1.dbo.table_1 这个和你先写的不一样。它的:server_1.database_a.dbo.table_1 可能是这个原因。

于 2013-12-09T15:36:01.047 回答
0
  1. 将 NT AUTHORITY\SYSTEM 用户置于 sysadmin 服务器角色中。

  2. 将此用户添加到链接服务器属性的安全选项卡中的远程用户名和密码的链接服务器登录映射中。

于 2015-01-16T07:27:59.073 回答