n TABLE TABLE TABLE SELECT INSERT UPDATE DELETE

  • Slides: 18
Download presentation

关于对象的权限 n 不同对象类型允许的操作权限如下表所示: 对象 对象类型 操作权限 属性列 TABLE 视图 TABLE 基表 TABLE SELECT、 INSERT、

关于对象的权限 n 不同对象类型允许的操作权限如下表所示: 对象 对象类型 操作权限 属性列 TABLE 视图 TABLE 基表 TABLE SELECT、 INSERT、 UPDATE、 DELETE、 ALL PRIVILEGES SELECT、 INSERT、 UPDATE、 DELETE、 ALTER、 INDEX、ALL PRIVILEGES 数据库 DATABASE CREATETAB

? all student, all course U 2 U 3 示例 Select student insert sc

? all student, all course U 2 U 3 示例 Select student insert sc n 例: Update student U 1 U 6 Create S_C U 8 insert sc U 7 GRANT SELECT ON TABLE Student TO U 1; U 4 GRANT ALL PRIVILEGES ON TABLE Student, Course TO U 2, U 3; GRANT SELECT ON TABLE SC TO PUBLIC; U 5 GRANT UPDATE(Sno), SELECT ON TABLE Student TO U 4; GRANT INSERT ON TABLE SC TO U 5 WITH GRANT OPTION; n 则U 5可以执行下列授权: GRANT INSERT ON TABLE SC TO U 6 WITH GRANT OPTION; n U 6获U 5的授权后,又可以将所获权限转换给U 7: GRANT INSERT ON TABLE SC TO U 7; GRANT CREATAB ON DATABASE S_C TO U 8;

示例 ? all student, all course U 2 U 3 ? insert sc U

示例 ? all student, all course U 2 U 3 ? insert sc U 6 Select student insert sc Update student U 1 insert sc Create S_C insert sc U 8 U 7 U 4 U 5 n 例: n REVOKE UPDATE(Sno) ON TABLE Student FROM U 4; REVOKE SELECT ON TABLE SC FROM PUBLIC: REVOKE INSERT ON TABLE SC FROM U 5; 此 时 , DBMS会 同 时 自 动 收 回 U 6和 U 7对 表 SC的 INSERT权 限 。 即 收回权限的操作会导致级联效应。 系统只回收直接或间接从U 5处得到的权限。若有其它用户授权U 6、 U 7对SC进行INSERT,而非U 5,则U 6、U 7仍具有此INSERT权限。 n n

完整性控制 例: CREATE TABLE Student n (Sno CHAR(5) NOT NULL UNIQUE, Sname CHAR(20), Ssex

完整性控制 例: CREATE TABLE Student n (Sno CHAR(5) NOT NULL UNIQUE, Sname CHAR(20), Ssex CHAR(1), Sage INT CHECK(Sage>14 AND Sage<40), Sdept CHAR(15)); v 定义及约束条件存于数据字典中

事务控制 n n n n n BEGIN TRANSACTION …… COMMIT [WORK] BEGIN TRANSACTION ……

事务控制 n n n n n BEGIN TRANSACTION …… COMMIT [WORK] BEGIN TRANSACTION …… ROLLBACK [WORK] 自动事务提交 SET AUTOCOMMIT ON 取消 SET AUTOCOMMIT OFF