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