Oracle11gDatabaseSQL语言基础5.pptVIP

  • 0
  • 0
  • 约2.9万字
  • 约 172页
  • 2018-07-30 发布于江苏
  • 举报
Oracle11gDatabaseSQL语言基础5

* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 索引创建建议 以下情况时,不要创建索引: 查询条件中不常出现的列 表很小,或者大多数查询涉及的数据大于4% 更新频繁的表 一个列的值拥有大量的NULL值 一个或多个列经常在WHERE子句或join条件中被引用 一个列的值较宽泛,范围大 需要引用的列包含在表达式中 表非常大,绝大多数的查询涉及的数据小于4% 以下情况时,创建索引: 删除索引 DROP INDEX : 删除emp_last_name_idx : 删除索引,需要是索引的所有者,或者有DROP ANY INDEX 系统权限. DROP INDEX emp_last_name_idx; DROP INDEX index; 同义词 Synonym 同义词可以: 引用其他用户下的表时更方便 相对于原表,缩短引用表名所需长度 CREATE [PUBLIC] SYNONYM synonym FOR object; 创建和删除同义词 创建更短的名字: 删除同义词: 不影响原对象 CREATE SYNONYM d_sum FOR dept_sum_vu; DROP SYNONYM d_sum; 控制用户访问 控制用户访问 DB管理员 用户 用户名、密码 权限 权限Privileges 系统权限: 用于在数据库内进行特定的操作 对象权限: 处理数据库对象的内容 Schemas: 对象的集合,如tables, views, and sequences 系统权限 超过100 个系统权限 数据库管理员拥有高级的系统权限,如: 创建新用户 删除用户 删除表 备份表 创建用户 CREATE USER demo IDENTIFIED BY demo; CREATE USER user IDENTIFIED BY password; 用户系统权限 在用户被创建后,管理员可以将权限赋于用户. 比如一个程序开发用户,可以有以下权限: CREATE SESSION CREATE TABLE CREATE SEQUENCE CREATE VIEW CREATE PROCEDURE GRANT privilege [, privilege...] TO user [, user| role, PUBLIC...]; GRANT create session, create table, create sequence, create view TO demo; 角色Roles 不使用roles进行权限分配 使用roles进行权限分配 权限 用户 Manager 创建角色 CREATE ROLE manager; GRANT create table, create view TO manager; GRANT manager TO BELL, KOCHHAR; 对象权限 对象 权限 表 视图 序列 ALTER DELETE INDEX INSERT REFERENCES SELECT UPDATE 对象权限 不同类型的对象有其自身的对象权限 对象的所有者拥有这个对象的全部权限 所有者可以将对象权限赋予其他用户 GRANT object_priv [(columns)] ON object TO {user|role|PUBLIC} [WITH GRANT OPTION]; 赋予对象权限 将查询EMPLOYEES的权限赋予demo用户: 将特定列的UPDATE权限赋予用户和角色: GRANT select ON employees TO demo; GRANT update (department_name, location_id

文档评论(0)

1亿VIP精品文档

相关文档