使用SQL语句使用户具有某个角色 使用SQL语句使用户具有某个角色如何编写SQL语句谢谢 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 下面的示例将 SQL Server 用户 Michael 添加到当前数据库中的 Engineering 角色。EXEC sp_addrolemember 'Engineering', 'Michael' sp_addrolemember将安全帐户作为当前数据库中现有 Microsoft® SQL Server™ 数据库角色的成员进行添加。语法sp_addrolemember [ @rolename = ] 'role' , [ @membername = ] 'security_account'参数[@rolename =] 'role'当前数据库中 SQL Server 角色的名称。role 的数据类型为 sysname,没有默认值。[@membername =] 'security_account'添加到角色的安全帐户。security_account 的数据类型为 sysname,没有默认值。security_account 可以是所有有效的 SQL Server 用户、SQL Server 角色或是所有已授权访问当前数据库的 Microsoft Windows NT® 用户或组。当添加 Windows NT 用户或组时,请指定在数据库中用来识别该 Windows NT 用户或组的名称(使用 sp_grantdbaccess 添加)。返回代码值0(成功)或 1(失败)注释当使用 sp_addrolemember 将安全帐户添加到角色时,新成员将继承所有应用到角色的权限。在添加 SQL Server 角色,使其成为另一个 SQL Server 角色的成员时,不能创建循环角色。例如,如果 YourRole 已经是 MyRole 的成员,就不能将 MyRole 添加成为 YourRole 的成员。此外,也不能将固定数据库或固定服务器角色,或者 dbo 添加到其他角色。例如,不能将 db_owner 固定数据库角色添加成为用户定义的角色 YourRole 的成员。只能使用 sp_addrolemember 将成员添加到 SQL Server 角色。使用 sp_addsrvrolemember 将成员添加到固定服务器角色。在 SQL Server 中,将成员添加到 Windows NT® 组是不可能的。在用户定义的事务中不能使用 sp_addrolemember。权限只有 sysadmin 固定服务器角色和 db_owner 固定数据库角色中的成员可以执行 sp_addrolemember,以将成员添加到固定数据库角色。角色所有者可以执行 sp_addrolemember,将成员添加到自己所拥有的任何 SQL Server 角色。db_securityadmin 固定数据库角色的成员可以将用户添加到任何用户定义的角色。示例A. 添加 Windows NT 用户下面的示例将 Windows NT 用户 Corporate\JeffL 添加到 Sales 数据库,使其成为用户 Jeff。然后,再将 Jeff 添加到 Sales 数据库的 Sales_Managers 角色中。说明 由于 Corporate\JeffL 在 Sales 数据库中被当作是用户 Jeff,所以必须使用 sp_addrolemember 来指定用户名 Jeff。USE SalesGOEXEC sp_grantdbaccess 'Corporate\JeffL', 'Jeff'GOEXEC sp_addrolemember 'Sales_Managers', 'Jeff'B. 添加 SQL Server 用户下面的示例将 SQL Server 用户 Michael 添加到当前数据库中的 Engineering 角色。EXEC sp_addrolemember 'Engineering', 'Michael' 在某字符串中寻找某些字符,如何写SQL语句? 求一SQL语句 新手初学,两个问题一直很头痛,求一个满意的答复!! 求一SQL语句? 数据库连接问题 如何创建实例? 这个存储过程(记录库存历史)可能存在漏洞吗? 字符串截取问题 Sql灵异问题? 临时表与分页 已经判断了为什么还 问2个SQL语句 添加外间约束错误!
将安全帐户作为当前数据库中现有 Microsoft® SQL Server™ 数据库角色的成员进行添加。语法
sp_addrolemember [ @rolename = ] 'role' ,
[ @membername = ] 'security_account'参数
[@rolename =] 'role'当前数据库中 SQL Server 角色的名称。role 的数据类型为 sysname,没有默认值。[@membername =] 'security_account'添加到角色的安全帐户。security_account 的数据类型为 sysname,没有默认值。security_account 可以是所有有效的 SQL Server 用户、SQL Server 角色或是所有已授权访问当前数据库的 Microsoft Windows NT® 用户或组。当添加 Windows NT 用户或组时,请指定在数据库中用来识别该 Windows NT 用户或组的名称(使用 sp_grantdbaccess 添加)。返回代码值
0(成功)或 1(失败)注释
当使用 sp_addrolemember 将安全帐户添加到角色时,新成员将继承所有应用到角色的权限。在添加 SQL Server 角色,使其成为另一个 SQL Server 角色的成员时,不能创建循环角色。例如,如果 YourRole 已经是 MyRole 的成员,就不能将 MyRole 添加成为 YourRole 的成员。此外,也不能将固定数据库或固定服务器角色,或者 dbo 添加到其他角色。例如,不能将 db_owner 固定数据库角色添加成为用户定义的角色 YourRole 的成员。只能使用 sp_addrolemember 将成员添加到 SQL Server 角色。使用 sp_addsrvrolemember 将成员添加到固定服务器角色。在 SQL Server 中,将成员添加到 Windows NT® 组是不可能的。在用户定义的事务中不能使用 sp_addrolemember。权限
只有 sysadmin 固定服务器角色和 db_owner 固定数据库角色中的成员可以执行 sp_addrolemember,以将成员添加到固定数据库角色。角色所有者可以执行 sp_addrolemember,将成员添加到自己所拥有的任何 SQL Server 角色。db_securityadmin 固定数据库角色的成员可以将用户添加到任何用户定义的角色。示例
A. 添加 Windows NT 用户
下面的示例将 Windows NT 用户 Corporate\JeffL 添加到 Sales 数据库,使其成为用户 Jeff。然后,再将 Jeff 添加到 Sales 数据库的 Sales_Managers 角色中。说明 由于 Corporate\JeffL 在 Sales 数据库中被当作是用户 Jeff,所以必须使用 sp_addrolemember 来指定用户名 Jeff。
USE Sales
GO
EXEC sp_grantdbaccess 'Corporate\JeffL', 'Jeff'
GO
EXEC sp_addrolemember 'Sales_Managers', 'Jeff'B. 添加 SQL Server 用户
下面的示例将 SQL Server 用户 Michael 添加到当前数据库中的 Engineering 角色。EXEC sp_addrolemember 'Engineering', 'Michael'