索引

1 单列索引
create index 索引名 on 表名(列名);

2复合索引
在同一张表上可以有多个索引,但是要求列的组合必须不同。
create index 索引名 on 表名(列名1, 列名2.....)

3 建立索引的原则
--大表上建立索引才有意义
--在where子句或是连接条件上经常引用的列上建立索引
--索引的层次不要超过四层

4 索引的缺点
--建立索引,系统要占用大约为表的1.2倍的硬盘和内存空间来保存索引
--更新数据时,系统必须要有额外的时间来同时对索引进行更新,以维持数据和索引的一致性。

不经常引用的列不需要建立索引;逻辑型字段不需要建立索引。
oracle对unique字段自动添加索引

管理权限和角色

1 系统权限:针对数据库的权限,能不能建表能不能登录等。可以通过dba用户查询。
2 对象权限:针对用户的权限,访问别的用户的方案的权限。
3 方案:当创建用户后,oracle会自动给新用户一个方案,方案与系统权限和对象权限没有任何关系,方案的名字和用户的名字是一样的,方案中包含各种各样的数据对象。
4 角色:多个系统权限或者对象权限的集合。

系统权限: 刚刚建立用户时,用户没有任何权限,也不能执行任何操作,授予系统权限时要求该用户有grant any privilege的系统权限,当带有with admin option选项时,被授予权限的用户或是角色还可以将该系统权限授予其它的用户或是角色,例子如下:

--创建用户:create user www identified by www;
create user ccc identified by ccc;
--授予权限:grant create session, create table to www with admin option;
grant create view to www;
--在www用户下将create session授权给ccc是可以成功的。
--回收系统权限:回收系统权限是dba来完成的,revoke create session from www; 将www的登陆权限回收了,这时ccc的登陆权限依然能够登陆。这种级联授权回收时并不是级联
回收。

对象权限:增(insert)删(delete)改(update)查(select)修改(alter)引用(references)执行(excute)索引(index)
授权对象权限需要是由对象所有者(优先使用)和dba用户完成。在后面带上with grant option代表可以将权限传递,当授予角色时不可带with grant option。

grant 权限 on 表名 to 用户或者角色;

--ccc用户下:grant select on 表名 to www;
--www用户下:select * from ccc.表名;
--只希望www可以修改ccc中表的一行或多列:grant update on 表名(列名......) to www;

--回收对象权限: revoke select on 表名 from 用户名或者角色;
这个是级联回收的。

oracle索引、 管理权限和角色的更多相关文章

  1. oracle管理权限和角色

    介绍 这一部分主要看看oracle中如何管理权限和角色,权限和角色的区别在哪里. 当刚刚建立用户时,用户没有任何权限,也不能执行任何操作.如果要执行某种特定的数据库操作,则必需为其授予系统的权限:如果 ...

  2. Oracle用户,权限,角色以及登录管理 scoot 授权

    Oracle用户,权限,角色以及登录管理 1. sys和system用户的区别 system用户只能用normal身份登陆em.除非你对它授予了sysdba的系统权限或者syspoer系统权限. sy ...

  3. Oracle用户、权限、角色管理学习(文字很系统)

     Oracle用户.权限.角色管理 2009-03-16 13:20:50 标签:oracle 数据库  休闲 职场 原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明 ...

  4. Oracle 用户管理权限

    Oracle 用户管理权限 一.创建用户的Profile文件 SQL> create profile student limit // student为资源文件名 FAILED_LOGIN_AT ...

  5. Oracle用户、权限、角色管理(转)

    http://blog.csdn.net/junmail/article/details/4381287 Oracle 权限设置一.权限分类:系统权限:系统规定用户使用数据库的权限.(系统权限是对用户 ...

  6. Oracle用户、权限、角色管理

    Oracle 权限设置一.权限分类:系统权限:系统规定用户使用数据库的权限.(系统权限是对用户而言). 实体权限:某种权限用户对其它用户的表或视图的存取权限.(是针对表或视图而言的).   二.系统权 ...

  7. Oracle的用户权限和角色

    用户和权限 LOCK|UNLOCK创建用户时是否锁定,默认为锁定状态.锁定的用户无法正常的登录进行数据库操作. --给普通用户SCOTT解锁,同时把SCOTT用户的密码进行修改 --语法结构:ALTE ...

  8. 8.windows-oracle实战第八课 --管理权限和角色

    权限:      如果要执行某种特定的数据库操作,就要赋予系统的权限:      如果要执行访问其他方案的对象,就要赋予对象的权限. 1.创建ken和tom用户 create user ken ide ...

  9. oracle查询用户权限及角色(摘)

    1.查看所有用户: select * from dba_users; select * from all_users; select * from user_users; 2.查看用户或角色系统权限( ...

随机推荐

  1. Javascript手记-垃圾收集

    如果有人问.net的垃圾回收,大家会马上想到gc,那如果有人问你javascript如何进行内存管理的呢?挠挠头,一口香瓜,听我细细道来! javascript具有自动垃圾收集机制,执行环境会负责管理 ...

  2. Namespaces(命名空间)

    datastore,Blobstore,memcache一起为应用存储数据.这对于在全球范围内分割数据是有用的.比如,一个应用可以为多个公司服务,每个公司可以看到它自己的隔离的应用实例,没有公司可以看 ...

  3. redis的sets类型

    set是集合 , 它是string类型的无序集合 . set是通过hash table 实现的 , 添加.删除和查找的复杂度都是O(1) . 对集合我们可以取并集.交集.差集.通过这些操作我们可以实现 ...

  4. 解决oracle启动的错误: ORA-00119 ORA-00132

    $ sqlplus / as sysdbaSQL>create pfile fromspfile修改$ORACLE_HOME/dbs下的文件initDEV.ora中的*.local_listen ...

  5. work_1

    Github的用户名为heiheitian 教科书:代码大全第2版 重构 一维最大子数组之和: #include<stdio.h>void MaxSumSonArrays(int a[], ...

  6. CodeForces 689D Friends and Subsequences (RMQ+二分)

    Friends and Subsequences 题目链接: http://acm.hust.edu.cn/vjudge/contest/121333#problem/H Description Mi ...

  7. CodeForces 176B Word Cut (计数DP)

    Word Cut Time Limit:2000MS     Memory Limit:262144KB     64bit IO Format:%I64d & %I64u Submit St ...

  8. codeforces300A Array

    A. Array time limit per test 2 seconds memory limit per test 256 megabytes input standard input outp ...

  9. [转]Freemarker数据类型转换

    转至:http://blog.sina.com.cn/s/blog_667ac0360102eaz8.html // 测试程序 package myTest; import java.io.Buffe ...

  10. PHP实现基于Swoole简单的HTTP服务器

    引用Swoole官方定义: PHP语言的异步.并行.高性能网络通信框架,使用纯C语言编写,提供了PHP语言的异步多线程服务器,异步TCP/UDP网络客户端,异步MySQL,数据库连接池,AsyncTa ...