SQLSERVER有规定:
返回表值的用户定义函数,可以不用用户名:
如:
select * from FUNCTION_1()
其它的必须加上函数归属的用户:
如:
select field1,dbo.function(field2) from tablename

解决方案 »

  1.   

    对了,标准答案来了:
    调用用户定义函数
    当调用标量用户定义函数时,必须提供至少由两部分组成的名称:SELECT *, MyUser.MyScalarFunction()
    FROM MyTable可以使用一个部分构成的名称调用表值函数:SELECT *
    FROM MyTableFunction()然而,当调用返回表的 SQL Server 内置函数时,必须将前缀 :: 添加至函数名:SELECT * FROM ::fn_helpcollations()