SQL Server 命令为某个数据库创建用户(有答案给20分)

2024-11-15 05:41:32
推荐回答(2个)
回答1:

--首先使用sp_addlogin添加登录
exec sp_addlogin '用户名','密码',默认数据库

--然后向该用户授予访问某数据库的权限
use 数据库名
exec sp_grantdbaccess '用户名'

--最后授予该用户的具体权限,比如可以对某个表进行select操作,这要根据该用户需要的权限来设定
use 数据库名
grant select
on 表名
to 用户名

比如要新建帐户appuser,密码为pass,并允许该用户对appdb数据库的test表有select 和update权限,那么依次执行

exec sp_addlogin 'appuser','pass','appdb'
go

use appdb
exec sp_grantdbaccess 'appuser'
go

use appdb

grant select,update
on test
to appuser

go

GRANT
名称
GRANT — 赋予一个用户,一个组或所有用户访问权限

语法
GRANT privilege [, ...] ON object [, ...]
TO { PUBLIC | GROUP group | username }
输入
privilege

可能的权限有:
SELECT
访问声明的表/视图的所有列/字段.
INSERT
向声明的表中插入所有列字段.
UPDATE
更新声明的表所有列/字段.
DELETE
从声明的表中删除所有行.
RULE
在表/视图上定义规则 (参见 CREATE RULE 语句).
ALL
赋予所有权限.
object

赋予权限的对象名.可能的对象是:
table
view

sequence

PUBLIC
代表是所有用户的简写.
GROUP group
将要赋予权限的组 group .
username
将要赋予权限的用户名.PUBLIC 是代表所有用户的简写.

回答2:

添加登录帐户
sp_addlogin 'c1','111'
为数据库test添加(映射)用户
use test
go
sp_adduser 'c1','c1' --这一行需要单独执行
sp_addrolemember 'db_owner','c1' --这一行需要单独执行