手机站
网通分站
电信主站
密 码:
用户名:
当前位置 : 主页>网络编程>Mssql>列表

数据库人员手边系列:SQL的用户及权限

来源:互联网 作者:west263.com 时间:2008-04-02
西部数码-全国虚拟主机10强!40余项虚拟主机管理功能,全国领先!双线多线虚拟主机南北访问畅通无阻!免费赠送企业邮局,.CN域名,自助建站480元起,免费试用7天,满意再付款! P4主机租用799元/月.月付免压金!

  Sybase中的用户分为两种:SQL服务器用户(登录帐号)和数据库用户。 安装完SQL服务器后,系统自动建立一个SQL服务器用户sa,口令为空,即系统管理员,他对整个系统有操作权,其他用户均由系统管理员建立。

  在SQL Server中有三种特别的用户:系统管理员、用户数据库任何者(建立相应数据库的数据库用户)DBO、一般用户。系统管理员对整个系统有操作权;用户数据库任何者对他所建立的数据库具备全部操作权利;一般用户对给定的数据库只有被授权的操作权限。

  数据库用户一般可分为用户组,任一数据库在建立后即被赋予一个用户组public。

  1、建立SQL服务器用户名(登录帐号)

  作为一个用户,为了使用SQL Server,他必须在SQL Server上有一个SQL服务器用户名(登录帐号)。这个帐号是系统管理员通过sp_addlogin来增加的。

  sp_addlogin 登录名,口令,库名,语言,全名

  例:建立用户zhang, 口令为zhangling(最低六位),全名为Zhang ling

  1> sp_addlogin zhang,zhangling,null,null,Zhang ling

  2> go

  3> select * from syslogins

  4> go

  2、增加数据库用户名

  同样,为了使用SQL Server上的数据库,他必须在数据库中有一个用户名,这个用户名是数据库任何者通过sp_adduser来增加的。数据库用户名不必和用户帐户相同,而且在不同的数据库中用户名能够不同。多个用户能够有相同的SQL Server帐户。同样,多个SQL Server帐户能够有相同的数据库名。

  sp_adduser 登录名,别名,组名

  登录名为用户的SQL服务器登录名;别名为用户在数据库中的用户名;组名为用户所属的数据库用户组。

  例:用户zhang增加为tele114的用户,别名为zhang1,属于用户组china

  1>sp_addgroup china

  2>go

  1>sp_adduser zhang,zhang1,china

  2>go

  1> sp_helpuser

  2> go

  *例:删除别名zhang1,用户组china,登录名zhang

  1> use tele114

  2> go

  3> sp_dropuser zhang1

  4> go

  5> sp_helpuser

  6> go

  1>sp_dropgroup china

  2>go

  1> sp_helpgroup

  2> go

  3> use master

  4> go

  5> sp_droplogin zhang

  6> go

  7> select * from syslogins

  8> go

  3、数据库操作授权

  grant 命令序列 to 用户名

  A. 系统管理员能够授予其他用户CREATE DATABASE的权限,使其他用户能够成为数据库任何者。

  B. 数据库任何者在他所拥有的数据库中,能够授予其他用户的权限有:

  l CREATE TABLE ------------------- 建表

  lCREATE DEFAULT ------------------ 建缺省

  lCREATE RULE ------------------- 建规则

  lCREATE PROCedure ------------------ 建存储过程

  lCREATE VIEW ------------------- 建视图

  lDUMP DATABASE ------------------- 备份数据库

  lDUMP TRANsaction ------------------ 备份日志

  C. 数据库对象任何者能够授予其他用户的操作权限有:

  l SELECT

  l UPDATE

  l INSERT

  l EXECute

  l DELETE

  l REFERENCE

  例:授予zhang1在数据库tele114上建表,建视图,建存储过程;对表students有select,reference权;对name,native字段有update权。

  1> use tele114

  2> go

  3> grant creat table,create procedure ,create view to zhang1

  4> go

  5> grant select,reference on students to zhang1 with grant option 6> go

  7> grant update on students(name,native) to zhang1

  8> go

  9> sp_helprotect

  10> go


文章整理:西部数码--专业提供域名注册虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!