锁定老帖子 主题:oracle辅导(3--4)
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2008-12-03
行号(rownum) 关于rownum: rownum 有个特点要么等于1 要么小于某个值, 不能直接等于某个值, 不能大于某个值。 rownum常用于分页显示。 rownum只用于读入内存的数据。
关于同义词:
同义词:相当于别名的作用(***只需了解***)系统自建的同义词: user_tables
create synonym asd_s_emp for asd_0606.s_emp ; 目的就是为了给asd_0606_s_emp表起另一个代替的名称asd.s_emp;注意这个同义词只能自己使用; create public synonym p_s_emp fro asd_0606.s_emp; 创建公共的同义词,但是要权限. 删除同义词: drop synonym 同义词名称
索引(index)
创建索引:Creating indexes(概念很重要对系统的性能影响非常大)
建索引的目的就是为了加快查询速度。
索引就相于一本的书的目录。索引点系统空间,属于表的附属物。删除一个表时,相对应的索引也会删除。索引是会进行排序。
truncate 表时索引结构在,但是数据不存在。
full table scan 全表扫描 用索引就是为了快速定位数据:(理解时就以字典的目录为例) 创建索引就是创建key和记录的物理位置(rowid)组成的键值对。索引是有独立的存储空间,但是和表是逻辑关联的,索引和表的关系是依附关系,表被删除了,索引也没有存在的意义也就被删除了
在建表时会根据表中的PK或UK自动的建立唯一性索引。
查看表的rowid: select rowid,first_name from s_emp; rowid 定义的信息有:object block table
每条记录都有自己的rowid
索引由谁创建:用户,建索引后会使DML操作效率慢,但是对用户查询会提高效率,这就是我们建索引的最终目的。
创建一个索引: create index 索引名 on 表名 (字段名); create insex testindex on test(c1, c2);
索引分为唯一性索引,联合索引。索引中是不会维护空值的。
哪些字段应该建索引:创建索引就是为了减少物理读,索引会减少扫描的时间。 经常要用where的子句的地方,所以要用索引.用不用索引,关键要看所查询的数据与所有数据的百分比,表越大,查询的记录越少,索引的效率就越高.
替换变量:用&符号来定义替换变量支持交互性提示,对于字符性的数字,一定要写在单引号之间 set verify on 替换开启 set verify off 替换关闭 定义变量: define p_dname='abc'; 用define定义的替换变量的作用范围是整个sqlplus 更改交互的提示信息: accept p_dname prompt ' 提示信息'; accept就是可以加入提示信息其他方面和define功能相同
相当于开关变量,用于控制是否显示新旧的sql语句
例:select id,last_name,salary from s_emp where title='&job_title'; 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
浏览 1334 次