Oracle面试题及答案

一、解释data block,extent 和 segment的区别

data block是数据库中最小的逻辑存储单元。sql

当数据库的对象须要更多的物理存储空间时,连续的data block就组成了extent。数据库

一个数据库对象拥有的全部extents被称为该对象的segment。函数

二、比较truncate和delete命令

(1)Truncate 和delete均可以将数据实体删掉,truncate 的操做并不记录到rollback日志,因此操做速度较快,但同时这个数据不能恢复日志

(2)Delete操做不腾出表空间的空间对象

(3)Truncate 不能对视图等进行删除索引

(4)Truncate是数据定义语言(DDL),而delete是数据操纵语言(DML)事务

 

三、Oracle中function和procedure的区别 

(1)能够理解函数是存储过程的一种io

(2)函数能够没有参数,可是必定须要一个返回值,存储过程能够没有参数,不须要返回值function

(3)函数return返回值没有返回参数模式,存储过程经过out参数返回值, 若是须要返回多个参数则建议使用存储过程 import

(4)在sql数据操纵语句中只能调用函数而不能调用存储过程

四、Oracle SQL语言分类:DQL、DML、DDL、DCL

(1)数据查询语言DQL        数据查询语言DQL基本结构是由SELECT子句,FROM子句,WHERE子句组成的查询块:        SELECT <字段名表>        FROM <表或视图名>        WHERE <查询条件>(2)数据操纵语言        数据操纵语言DML主要有三种形式:        1) 插入:INSERT        2) 更新:UPDATE        3) 删除:DELETE(3)数据定义语言DDL        数据定义语言DDL用来建立数据库中的各类对象-----表、视图、索引、同义词、聚簇等如:        CREATE TABLE/VIEW/INDEX/SYN/CLUSTER                        表       视图   索引  同义词  簇(4)数据控制语言DCL        数据控制语言DCL用来授予或回收访问数据库的某种特权,并控制        数据库操纵事务发生的时间及效果,对数据库实行监视等。如:        1) GRANT:受权。        2) ROLLBACK TO :回退到某一点。        回滚---ROLLBACK        回滚命令使数据库状态回到上次最后提交的状态。其格式为:        SQL>ROLLBACK;        3) COMMIT :提交。

相关文章
相关标签/搜索