我用的sql2000 
我用查询分析器 
  select * from link.ufdata_001_2012.dbo.Ap_Vouchs
就能查出数据但是我如果把他放到存储过程中就报
数字 名称 'link.ufdata_001_2012.dbo.Ap_Vouchs' 包含的前缀数目超过了最大值。最大值为 3。

解决方案 »

  1.   

    link 是你的连接服务名称?
      

  2.   

    用[]括起来就可以了。
    [link].[ufdata_001_2012].[dbo].[Ap_Vouchs] 
      

  3.   

    你怎么用select 去调用存储过程呢
      

  4.   

    由于这个限制,存储过程中 你需要使用openrowset之类的去调用select * from  openrowset( 'sqloledb ',   '远程服务器名 '; 'sa '; '密码 ',   远程库名.dbo.远程表名) 
      

  5.   

    sp_configure 'show advanced options', 1 
       GO
       RECONFIGURE
       GO
       sp_configure 'Ad Hoc Distributed Queries', 1 
       GO
       RECONFIGURE
       GO
      

  6.   

    不能select * from 存储过程,只能execute 存储过程,可以接收结果放在临时表中.exec 链接服务器.数据库名称.dbo.存储过程名称