权限可以分为两大类:系统权限和对象权限。
授予系统权限语法:
GRANT {system_privilege | ALL[PRIVILEGES]} [,{system_privilege | ALL [PRIVILEGES]}]…….
TO {user | role |PUBLIC}[,{user | role |PUBLIC}]………
[WITH ADMIN OPTION];
回收系统权限语法:
REVOKE {system_privilege |ALL[PRIVILEGE]}[,{system_privilege | ALL [PRIVILEGES]}]…………..
FROM {user | role|PUBLIC}[,{user | role | PBULIC}]……;
回收系统权限不会级联回收。但是回收对象权限可以级联回收。
授予对象权限语法:
GRANT {object_privilege |ALL[PRIVILEGES]
[(column_1[,column_2]……)]}[,{object_privilege | ALL [PRIVILEGES]
[(column_m [,column_n]……)]}]ON [schema.]object
TO {user |role |PUBLIC}[,{user |role |PUBLIC}]………
[WITH GRANT OPTION] [WITHHIERARCHY OPTION];
回收对象权限语法:
REVOKE {object_privilege |ALL[PRIVILEGES] [(column_1[,column_2]……)]}
[,{object_privilege|ALL[PRIVILEGES] [(column_m [,column_n]……)]}]
ON [schema.]object
FROM {user |role |PUBLIC}[,{user |role|PUBLIC}]………
[CASCADE CONSTRAINTS];
回收对象权限时,可以级联回收。
CASCADE CONSTRAINTS :表示在回收对象权限时,同时删除该用户利用REFERENCE对象权限在该对象上定义的参照完整性约束。