在SQL 2000中调用自定义函数非要加一个用户ID吗?可不可不加?
我创建了如下所示的函数,可是在调用时非要在函数名前加个dbo.的前缀,不然会提示找不到函数,怎么样做才不用加这个前缀啊?
/*判断某用户是否有某项操作权限*/
Create Function dbo.HasRight( @Uid int , @Right varchar(20) )
returns bit
as
Begin
if Exists( select t_UsersRight.RightID from t_UsersRight join t_RightList on t_UsersRight.Rightid=t_RightList.RightID Where t_UsersRight.Uid=@Uid and t_RightList.RightNo=@Right)
return 1;
return 0;
End
[解决办法]
是的,标量函数一定要加dbowner。
表值函数可以不加。