1. 前言
在MSSQL管理工作中,创建新的用户名是常见的任务。新的用户名可以为新的数据库用户或服务器登录用户提供身份验证。在本文中,我们将讨论如何在MSSQL中创建和管理新的用户名。
2. 创建新用户
2.1 创建数据库用户
要创建一个新的数据库用户,首先需要使用现有的登录身份验证方式连接到MSSQL数据库。然后,使用以下SQL语句创建新的数据库用户:
USE [DatabaseName]
CREATE USER [UserName] FOR LOGIN [LoginName]
在上面的代码中,DatabaseName是要创建用户的数据库名称,UserName是要创建的新用户名,LoginName是数据库中现有的登录名。
创建用户后,您可以使用以下SQL语句为用户授权:
USE [DatabaseName]
GRANT [Permission] TO [UserName]
在上面的代码中,DatabaseName是要授予权限的数据库名称,Permission是要授予的权限类型,如SELECT、INSERT、UPDATE和DELETE,UserName是要授权的数据库用户名。
2.2 创建服务器登录用户
要创建一个新的服务器登录用户,需要使用现有的系统管理员(sysadmin)登录到MSSQL数据库。然后,使用以下SQL语句创建新的服务器登录用户:
USE [master]
CREATE LOGIN [LoginName] WITH PASSWORD=N'[Password]', DEFAULT_DATABASE=[DatabaseName], CHECK_EXPIRATION=OFF, CHECK_POLICY=OFF
在上面的代码中,master是系统数据库名称,LoginName是要创建的新登录名,Password是登录名的密码,DatabaseName是登录时默认使用的数据库名称。CHECK_EXPIRATION和CHECK_POLICY两个参数用于指定登录名密码的过期和策略检查设置。
创建登录名后,您可以使用以下SQL语句为登录名分配服务器角色:
USE [master]
ALTER SERVER ROLE [ServerRoleName] ADD MEMBER [LoginName]
在上面的代码中,master是系统数据库名称,ServerRoleName是SQL Server分配的服务器角色名称,LoginName是要分配角色的登录名。
3. 修改用户
3.1 修改数据库用户
要修改现有的数据库用户,您可以使用以下SQL语句:
USE [DatabaseName]
ALTER USER [UserName] WITH LOGIN = [NewLoginName], NAME = [NewUserName], DEFAULT_SCHEMA = [SchemaName]
在上面的代码中,DatabaseName是要修改的数据库名称,UserName是要修改的现有数据库用户名,NewLoginName是新的登录名,NewUserName是新的用户名,SchemaName是默认模式名称。
使用以下SQL语句将现有的数据库用户与新的登录名关联:
USE [DatabaseName]
ALTER USER [UserName] WITH LOGIN = [NewLoginName]
在上面的代码中,DatabaseName是要修改的数据库名称,UserName是要修改的现有数据库用户名,NewLoginName是新的登录名。
3.2 修改服务器登录用户
要修改现有的服务器登录用户,您可以使用以下SQL语句:
USE [master]
ALTER LOGIN [LoginName] WITH PASSWORD=N'[NewPassword]'
在上面的代码中,master是系统数据库名称,LoginName是要修改的现有登录名,NewPassword是新的登录密码。
要修改登录名使用的默认数据库,请使用以下SQL语句:
USE [master]
ALTER LOGIN [LoginName] WITH DEFAULT_DATABASE=[NewDatabaseName]
在上面的代码中,master是系统数据库名称,LoginName是要修改的现有登录名,NewDatabaseName是新的默认数据库名称。
4. 删除用户
4.1 删除数据库用户
要删除现有的数据库用户,您可以使用以下SQL语句:
USE [DatabaseName]
DROP USER [UserName]
在上面的代码中,DatabaseName是要删除用户的数据库名称,UserName是要删除的用户名。
4.2 删除服务器登录用户
要删除现有的服务器登录用户,您可以使用以下SQL语句:
USE [master]
DROP LOGIN [LoginName]
在上面的代码中,master是系统数据库名称,LoginName是要删除的登录名。
结论
在MSSQL管理中,创建、修改和删除用户名是基本的任务之一。本文中,我们讨论了如何在MSSQL中创建和管理新的用户名,包括创建数据库用户和服务器登录用户、修改现有的数据库用户和服务器登录用户以及删除现有的数据库用户和服务器登录用户。