1.oracle 主键、外键自动建立索引。
2.索引就像书的目录,否则就是全表扫描,full table scan,比如一本书你没目录,就要一页一页翻。。。
3.http://blog.csdn.net/tianlesoftware/article/details/5347098 dave 索引介绍
- 索引的创建语法:
- CREATE UNIUQE | BITMAP INDEX .
- ON .
- ( | ASC | DESC,
- | ASC | DESC,...)
- TABLESPACE
- STORAGE
- LOGGING | NOLOGGING
- COMPUTE STATISTICS
- NOCOMPRESS | COMPRESS
- NOSORT | REVERSE
- PARTITION | GLOBAL PARTITION
- 相关说明
- 1) UNIQUE | BITMAP:指定UNIQUE为唯一值索引,BITMAP为位图索引,省略为B-Tree索引。
- 2) | ASC | DESC:可以对多列进行联合索引,当为expression时即“基于函数的索引”
- 3)TABLESPACE:指定存放索引的表空间(索引和原表不在一个表空间时效率更高)
- 4)STORAGE:可进一步设置表空间的存储参数
- 5)LOGGING | NOLOGGING:是否对索引产生重做日志(对大表尽量使用NOLOGGING来减少占用空间并提高效率)
- 6)COMPUTE STATISTICS:创建新索引时收集统计信息
- 7)NOCOMPRESS | COMPRESS:是否使用“键压缩”(使用键压缩可以删除一个键列中出现的重复值)
- 8)NOSORT | REVERSE:NOSORT表示与表中相同的顺序创建索引,REVERSE表示相反顺序存储索引值
- 9)PARTITION | NOPARTITION:可以在分区表和未分区表上对创建的索引进行分区
4.索引直接指向包含所查询值的行的位置,减少磁盘I/O。
5.Oracle 自动使用并维护索引,插入、删除、更新表后,自动更新索引。比如我imp进去之后,自动建索引。。。如果没必要,就不建了。
6.user_indexs 数据字典包括用户创建的索引名字,属于哪张表。user_ind_columns视图包括索引的名字、表名、列明。
7.基于函数的索引,如一列sname上,既有大写的名字,又有小写的name,查询的时候,自动转化为大写的,建索引可以基于upper,如:create index std_ind on student upper('sname');
8.索引多了,影响dml(数据库操作语言)的效率。
9.同义词
通过创建同义词(对象的另一个名字,别名)来简化对数据库对象的存取,缩短了对象名字的长度。创建方法:create [public] synonym synonym for object;drop synonym syname;
阅读(736) | 评论(0) | 转发(0) |