--首先使用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 是代表所有用户的简写.
添加登录帐户
sp_addlogin 'c1','111'
为数据库test添加(映射)用户
use test
go
sp_adduser 'c1','c1' --这一行需要单独执行
sp_addrolemember 'db_owner','c1' --这一行需要单独执行