我们可以模拟一下让这个数据库可以给其它人使用
1、在计算机中添加一个新用户TeacherWang
2、在Sql Server中添加该计算机用户的登录权限
exec sp_grantlogin 'LAPTOP-61GDB2Q7\TeacherWang'
-- 之后这个计算机用户也可以登录数据库了
3、添加数据库的登录用户和密码(这个时候可以登录,但是无法访问具体的数据库)
exec sp_addlogin 'xiaoliu', '1234'
删除登录账号:将add改为drop
4、添加数据库的访问权限(到可以访问的数据库中添加,或者指定master)
exec sp_grantdbaccess 'xiaoliu'
-- 删除xiaoliu对这个数据库的访问使用drop user 'xiaoliu';在哪个数据库要删除就在哪个数据库中执行删除命令
-- 如果删除报错:“数据库主体在该数据库中拥有 架构,无法删除”,那就需要删除架构先
SELECT name FROM sys.schemas WHERE principal_id = USER_ID('xiaoliu');
-- 这一句就是查询出所有的架构,然后删除
DROP SCHEMA xiaoliu;
5、经过这么操作登录上就可以点击数据库了,并且没有警告,说明添加权限成功
但是,这是数据库的权限,表的权限还是没有的,所以点开数据库的表会看到没有表;因为还没有添加表的权限
添加表的权限:
GRANT SELECT ON [表名] TO [用户名]