MSSQL 数据库:如何验证数据库中角色、用户名、登录名已存在

本文介绍了如何在MSSQL数据库中验证登录名、用户名和角色是否存在。通过查询sys.syslogins系统视图来检查登录名,使用sys.sysusers查看用户名,并利用sys.database_principals来检测角色。示例SQL语句提供了判断和创建这些实体的方法。
摘要由CSDN通过智能技术生成

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

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值