在sql2005中调用不了链接服务器上的表值函数,只能调用链接服务器表数据数据可以查询,但表值函数不能调用 ,提示  "消息 4122,级别 16,状态 1,第 1 行
  不允许使用远程表值函数调用。"
请高手指教!

解决方案 »

  1.   

    是有这样的问题, 不过, 楼主将其当作存储过程调用的话, 就可以调用了(即使用EXEC来调用)
      

  2.   

    另外, 我记得 OPENQUERY(链接服务器名,'select * from db.dbo.函数()') 是可以的, 只是参数不好弄
      

  3.   

    刚才去测试了一下, 看来是记错了, EXEC也无法调用另:
    sql 2005 亦有同样的限制
      

  4.   

    感谢 zjcxc(邹建),我改成OPENQUERY这种格式,调用存储了,项目紧急,调不成链接服务器函数只能用存储过程了!
      

  5.   

        declare @a int,@sql char(2000)
        set @a=1866
        set @sql='select * from openquery(test,''select dbo.标准函数_职工姓名('+''''''+ltrim(rtrim(@a))+''''''+')'' )'
        --print @sql
        exec (@sql)
    这样调用是OK的