Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
SQL server中用户映射的脚本更新_Sql_Sql Server_Tsql_Scripting_Database Management - Fatal编程技术网

SQL server中用户映射的脚本更新

SQL server中用户映射的脚本更新,sql,sql-server,tsql,scripting,database-management,Sql,Sql Server,Tsql,Scripting,Database Management,好的,首先,我必须声明我是一个noob,所以请原谅我的任何不正确的术语或误解 我的问题是,我有一个定期运行还原的数据库,每次运行还原时,它都会重置一些我必须进入并手动更改的用户映射。我想为这项更改编写脚本 这就是我现在拥有的 USE profile Drop User [<UserName>] GO Create User [<UserName>] For LOGIN [<UserName>] GO exec

好的,首先,我必须声明我是一个noob,所以请原谅我的任何不正确的术语或误解

我的问题是,我有一个定期运行还原的数据库,每次运行还原时,它都会重置一些我必须进入并手动更改的用户映射。我想为这项更改编写脚本

这就是我现在拥有的

    USE profile

    Drop User [<UserName>]
    GO
    Create User [<UserName>] For LOGIN [<UserName>]
    GO
    exec sp_addrolemember 'db_owner', 'UserName'
    GO
使用配置文件
删除用户[]
去
为登录名[]创建用户[]
去
exec sp_addrole成员'db_owner','UserName'
去
这将适用于实际上是数据库用户帐户的帐户。虽然我试图修复/修改的帐户实际上是一个主帐户,并且没有专门链接到任何数据库

为了防止我的术语混淆,我会再解释一下。如果您正在查看SQL Server中的对象资源管理器。该账户在银行账户下 服务器名>安全性>登录

不在ServerName>Database>DatabaseName>Security>Users下


如果我不清楚或需要更多信息,请告诉我。

您是在谈论服务器角色吗?-'ALTER SERVER ROLE‘不,我不相信这是一个服务器角色。如果您正在查看sql server对象,请浏览技能树,如ServerName>Security>Logins。与服务器角色位于同一树中,但不是我不相信的服务器角色。这些是登录<代码>创建登录名:-将创建服务器级登录名。您是否正在尝试将这些添加到数据库中的角色?因此您认为创建登录应该这样做?我不一定要创建一个新的登录名,而是尝试修改现有的登录名“属性”,并更改用户映射,以便通过sql脚本选择db_所有者。我可以通过ui来实现这一点,但需要将其作为脚本来编写,以提高效率。