is_member()过程中的参数

时间:2014-12-04 20:33:34

标签: sql sql-server stored-procedures

在Sql Server中,我有这个列NomRole,其中包含我可以放置安全性的角色名称 我试过这个测试来检查is_member程序

IF IS_MEMBER ('db_owner') = 1
   print 'current user is a member of the db_owner role'
else if IS_MEMBER(dbo.liaisecurité.NomRole) = 1 // <-- problem //

但是当我在is_member()过程中放入一列而不是字符串时,似乎存在问题 它说多部分标识符“dbo.liaisecurité.NomRole”无法绑定

1 个答案:

答案 0 :(得分:0)

首先,从dbo下删除试用is_member()

尝试类似

的内容
-- Execute SELECT if user is a member of ADVWORKS\Shipping.
IF IS_MEMBER ('ADVWORKS\Shipping') = 1
   SELECT 'User ' + USER + ' is a member of ADVWORKS\Shipping.'; 
GO

如果您想传递变量值,请使用此示例

Declare @owner varchar(20)
SET @owner = 'db_owner'
SELECT IS_MEMBER(@owner)

参考 http://msdn.microsoft.com/en-us/library/ms186271.aspx