sybase資料庫用戶
㈠ sybase資料庫怎麼創建用戶組
sybase資料庫的用戶,包含兩個層面:一個是登陸號,另一個是具體DB的用戶,我們登陸時,使用的是登錄號,但是這個登錄號可以操作哪些DB及操作許可權則取決於資料庫用戶。一般情況下,我們可以採取相同的名字來表示登錄號和資料庫用戶。
首先創建一個登陸號:
sp_addlogin loginame, passwd
loginame 登錄名
passwd 密碼
全部語法(一般不用到)為:
sp_addlogin loginame, passwd [, defdb]
[, deflanguage ] [, fullname ] [, passwdexp ]
[, minpwdlen ] [, maxfailedlogins ]
然後創建用戶:
sp_adser loginame
這樣創建當前資料庫的用戶,且用戶名和登陸名是一樣的。
全部語法為:
[dbname..]sp_adser loginame [, username[, grpname]]
最後分配許可權:
grant all | select,insert,delete,update
on table_name | view_name | stored_procere_name
to username
或
grant all | create database,create
default,create procere,create rule,create table,create view,set proxy,set session authorization
to username
例,假如當前DB為:DB001:
sp_addlogin 'test001','password001'
go
sp_adser 'test001', 'user001'
go
grant create table to user001
go
創建了一個test001的登錄名,之後為之創建一個當前資料庫的用戶,使這個登錄名可以操作當前資料庫。之後分配了創建表的許可權給user001。
這個時候你就可以使用用戶名'test001'和密碼'password001'登陸了,並且可以在DB001中創建表了。同時由於sp_adser 的時候沒有指定grpname參數,那麼默認是public用戶組,這個組里的用戶默認即開通了select/delete/update/insert的許可權。
如果你希望去掉一些許可權,請使用revoke命令,其語法了grant完全相同,你只需要將grant換成revoke即可,例:
revoke select on address to user001
禁止user001查看address表。