论坛首页 入门技术论坛

oracle辅导(3--4)

浏览 1336 次
精华帖 (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)组成的键值对。索引是有独立的存储空间,但是和表是逻辑关联的,索引和表的关系是依附关系,表被删除了,索引也没有存在的意义也就被删除了

 

在建表时会根据表中的PKUK自动的建立唯一性索引。

 

查看表的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';

论坛首页 入门技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics