ORALCE 创建主键&唯一约束同时也创建索引
2013-10-20 11:43
274 查看
ORALCE 创建主键&唯一约束同时也创建索引
原理:
主键和唯一约束都是限制表字段值不能重复,必须唯一的约束;
当一个表中建有主键或唯一约束时,oracle会自动创建对应主键或唯一约束的索引,这索引是oracle自动创建的。为什么oracle会自动创建索引呢?
因为新增一条数据时,oracle先去数据库查询此条新增数据是否存在,如果不存在则插入成功,否则插入失败。试想下如oracle不自动创建索引,查该新增数据是否存在于数据库就得整张表去扫描(千万级数据表全表扫描是不可想象的),数据量大时影响性能是肯定的。那么主键、唯一约束在新增数据时oracle都会先去数据库查询,用到查询就要用到索引提高性能,所以他就会默认创建索索引来提高检查数据是否存在来,从而提高查询效率。这就是oracle自动创建索引的初衷。
原理:
主键和唯一约束都是限制表字段值不能重复,必须唯一的约束;
当一个表中建有主键或唯一约束时,oracle会自动创建对应主键或唯一约束的索引,这索引是oracle自动创建的。为什么oracle会自动创建索引呢?
因为新增一条数据时,oracle先去数据库查询此条新增数据是否存在,如果不存在则插入成功,否则插入失败。试想下如oracle不自动创建索引,查该新增数据是否存在于数据库就得整张表去扫描(千万级数据表全表扫描是不可想象的),数据量大时影响性能是肯定的。那么主键、唯一约束在新增数据时oracle都会先去数据库查询,用到查询就要用到索引提高性能,所以他就会默认创建索索引来提高检查数据是否存在来,从而提高查询效率。这就是oracle自动创建索引的初衷。
相关文章推荐
- RoBa:Facebook 面试 Q&A
- CentOS 6.4 系LAMP(Apache+MySQL+PHP)安装步骤
- 如何才能进入Facebook工作?公司内部工程师告诉你
- Web 整合Spring
- 成为Python高手之路
- 膜拜一下wjmzbmr500+的代码
- Java程序员集合框架面试题
- VC7及以后版本的栈溢出防护机制
- 一分钟先生: 程序员面试真经
- ubutun svn服务器的搭建与使用
- Google前美女面试官谈程序员面试的技巧和建议
- jdk 常用的包和类
- 输入一个字符串,输出该字符串中对称的子字符串的最大长度。比如输入字符串“google”,由于该字符串里最长的对称子字符串是“goog”,因此输出4。
- 使用sql server和sybase时记得''表示空字符串,但是在oracle中却发现没有空字符串一说,oracle把''当null来对待!
- Google前工程经理王忻:如何准备软件工程师的面试
- 大牛的法宝[转]
- C语言读取文本字符串!
- 扩展BaseAdapter实现不存储列表项的ListView
- Can't connect to MySQL server on localhost (10061)解决方法
- 反射机制中使用JavaBean来模拟Hibernate或Ibatis设置参数