1. MSSQL添加多个用户账号
MSSQL是一种关系型数据库,广泛应用于企业内部数据存储、管理和分析,账号的管理是其基本功能之一。以下将介绍如何在MSSQL中添加多个用户账号。
1.1 创建登录
MSSQL的账号管理基于登录,因此需要先创建登录。通过连接MSSQL后,选择“安全性”下的“新建登录”,如下图所示:
在“新建登录”窗口中,填写登录名和密码,选择“SQL Server身份验证”,并设置相应的权限。其中,登录名和密码记得妥善保存,这是用户后续登录使用的关键。
点击“确定”后,登录即创建完成。
1.2 创建用户
在登录创建完成后,下一步是创建用户,以便将登录与特定数据库中的操作绑定。在连接MSSQL并选中特定数据库后,右键点击该数据库,选择“新建用户”,如下图所示:
在“新建用户”窗口中,填写用户名称和登录名,并选择所需的权限。其中,用户名称是用于标识该用户的名称,而登录名则是登录时使用的名字,这两者可以是相同的也可以是不同的。
权限分为两类:
作为数据库用户的权限,控制该用户在数据库中能够执行哪些操作,例如SELECT、INSERT、UPDATE和DELETE。
作为数据库对象的权限,控制该用户能够对哪些数据库对象执行哪些操作,例如表、视图和存储过程。
在填写完毕后,点击“确定”即可创建用户。
1.3 授权
用户创建完成后,需要授权才能使用。在连接MSSQL并选中特定数据库后,右键点击该数据库,选择“属性”,如下图所示:
在“数据库属性”窗口中,选择“权限”选项卡,点击“添加”按钮,如下图所示:
在“选择用户或角色”窗口中,选择需要授权的用户或角色,如下图所示:
选择完毕后,继续点击“确定”按钮,并在“授权”窗口中为该用户设置相应的权限,例如SELECT、INSERT、UPDATE和DELETE等。填写完成后,点击“确定”即可完成授权。
2. 批量添加用户账号
上述的方法适用于单个用户的添加,对于批量添加需要借助其他工具或脚本来实现。以下介绍一种基于脚本的批量添加方法。
2.1 创建文本文件
首先需要创建一个文本文件,用于存储需要添加的用户信息。该文件中每一行代表一个用户,每个用户的信息之间用“制表符”或“空格”隔开,如下所示:
username1 password1
username2 password2
username3 password3
注意,每个用户的密码需要经过加密,使用下列脚本可以生成加密后的密码:
SELECT password, pwdencrypt('P@ssw0rd')
FROM sys.sql_logins
WHERE name = 'sa'
其中,'P@ssw0rd'是用户实际使用的密码。
2.2 创建脚本文件
创建一个批处理文件(.bat),用于批量添加用户。以下是一个示例脚本:
set /p server=Enter the SQL server:
set /p db=Enter the database name:
for /f "tokens=1,2" %%i in (users.txt) do (
sqlcmd -S %server% -U sa -P P@ssw0rd -d %db% -Q "CREATE LOGIN [%%i] WITH PASSWORD=N'%%j', DEFAULT_DATABASE=[%db%], CHECK_POLICY=OFF, CHECK_EXPIRATION=OFF"
sqlcmd -S %server% -U sa -P P@ssw0rd -d %db% -Q "CREATE USER [%%i] FOR LOGIN [%%i]"
sqlcmd -S %server% -U sa -P P@ssw0rd -d %db% -Q "EXEC sp_addrolemember 'db_datareader', '%%i'"
)
该脚本用于从users.txt文件中读取用户名和密码,并根据这些信息创建登录、用户和角色成员。在运行脚本前,还需要修改其中的几个变量:
server:MSSQL服务器的名称或IP地址。
db:需要添加用户的数据库名称。
P@ssw0rd:sa用户的密码。
脚本运行后,用户账号即可添加至MSSQL中。
结论
MSSQL的账号管理功能十分强大,可通过登录、用户和角色成员等方式进行管理。对于单个用户的添加,可以通过MSSQL图形界面进行操作;而对于批量添加,则需要借助脚本等工具来实现。在添加用户时,需要注意安全问题,例如密码加密、权限控制等。