1. 判断 “登录名”
在每一个MSSQL的数据库总都存在 【系统视图】,这些视图在的Logins内容是没有区别的,无论是master还是自己项目的数据库都是如此。所以执行下列SQL得到的结果都是一样
use master
select * from sys.syslogins ;
use yourdb
select * from sys.syslogins ;
所以就可以使用
if existes ( select name from sys.syslogings where name ='your login name' )
print 'right [your login name ] exist '
else
print 'wrong [your login name] does not exist '
来判断,某一个登录名是否存在
2. 判断 “用户名”是否存在
与Logins 不同 users 在不同的数据库中是不一样的。所以在判断某一用户是否存在需要标注数据库名称
例如:
use yourdb
IF EXISTS(SELECT NAME FROM sys.sysusers WHERE NAME ='username')
PRINT 'right ,username exist '
ELSE
PRINT 'wrong,username does not exist '
3. 判断 ”角色“ 是否存在
类似于 Users 判断角色也需要指定 DB
例如:
USE [y