所有使用者 to/from public 所有權限:grant/revoke all privileges
1.grant授權
把查詢Student表的權限授給使用者U1 sql server表名前不需要加table
Grant select
on table student --sql server不能加table
to u1;
把對表student表和course表的全部操作權限授予使用者U2和U3
Grant all privileges
on student,course
to U2,U3;
把對表SC的查詢權限授予所有使用者
Grant select
on SC
to public;
把查詢studnet表和修改學号的權限授予使用者U4
Grant select,update(sno)
on student
to U4;
把對表SC的insert權限授予使用者U5,并允許将此權限再授予其他使用者
Grant insert
on SC
to U5
with grant option;
U5将insert權限給U6
Grant insert
on SC
to U6
with grant option;
也加了with grant option; 則U6也可以将此權限給U7
Grant insert
on SC
to U7;
U6給U7未加with grant option;則U7不能再傳播此權限
建立資料庫和建立表的權限給使用者xsuser1
grant create database
to xsuser1;
grant create table
to xsuser1;
2.revoke收回權限
由資料庫管理者或其他授權者用revoke語句收回授權
把使用者U4修改學号的權限收回
revoke update(sno)
on Student
from U4;
收回所有使用者對表SC的查詢權限
revoke select
on SC
from public;
把使用者U5對表SC的insert權限收回
revoke insert
on SC
from U5 cascade;
-- 因為U5将權限傳播給了U6、U7、是以加上cascade,級聯收回U6,U7的insert權限,否則語句拒絕執行
3、建立資料庫模式的權限
create user <username> [with] [DBA|resource|connect];
新建立的資料庫使用者有三種級别的權限connect、resource和dba
create user 不指定權限 預設connect
權限對應的可執行操作
擁有權限 | create user | create schema | create table | 登入,查詢和操縱 |
dba | 可以 | 可以 | 可以 | 可以 |
resource | 不可以 | 不可以 | 可以 | 可以 |
connect | 不可以 | 不可以 | 不可以 | 可以,但要被賦予相應權限 |