SQLServer 通过链接服务器查询表报错 “ 消息 7313 ,级别 16”
问题:
通过链接服务器查询某张表时报错如下:
select top 10 * from [172.100.100.20] .[CJCDB] .[dbo] .[t1] ;
消息 7313 ,级别 16 ,状态 1 ,第 1 行
为链接服务器 "172.100.100.20" 的访问接口 "SQLNCLI11" 指定了无效的架构或目录。
问题原因:
通过链接服务器查询其他表正常,并且在 172.100.100.20本地 查询 t1 表也正常;
select top 10 * from t1;
服务器对象--- 链接服务器 找 到对应的表---查询正常,没有报错
SELECT [XXID]
,[XXNum]
,[XXJID]
FROM [172.100.100.20] .[CJCDB] .[dbo] .[T1 ]
GO
发现表名后面有空格!!!
解决方案:
加上空格查询正常;
select top 10 * from [172.100.100.20] .[CJCDB] .[dbo] .[t1 ] ;
查询哪些表名带有空格
select * from sys . objects where type = 'U' and name like '% %';
欢迎关注我的微信公众号"IT小Chen",共同学习,共同成长!!!