华为面试题附答案Oracle-DBA数据库管理员JAVA程序员架构师必看说课讲解.doc
《华为面试题附答案Oracle-DBA数据库管理员JAVA程序员架构师必看说课讲解.doc》由会员分享,可在线阅读,更多相关《华为面试题附答案Oracle-DBA数据库管理员JAVA程序员架构师必看说课讲解.doc(17页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、Good is good, but better carries it.精益求精,善益求善。华为面试题附答案Oracle-DBA数据库管理员JAVA程序员架构师必看-DBA数据库管理员JAVA程序员架构师必看一、技术问题部分(数据库部分)1、表空间的管理方式有哪几种?数据字典管理方式本地文件管理方式2、谈谈你对索引的理解?索引是若干数据行的关键字的列表,查询数据时,通过索引中的关键字可以快速定位到要访问的记录所在的数据块,从而大大减少读取数据块的I/O次数,因此可以显著提高性能。3、说说索引的组成?索引列、rowid4、分区表用过么?谈谈分区表的应用?分区表在对表的DML的并行处理上有极大得优
2、势,而且可以一部分设为只读,用在销售记录,医院处方等地方!5、你对分区表的理解?怎样截断分区表一个分区的记录?一个分区表有一个或多个分区,每个分区通过使用范围分区、散列分区、或组合分区分区的行分区表中的每一个分区为一个段,可各自位于不同的表空间中对于同时能够使用几个进程进行查询或操作的大型表分区非常有用altertabletable_nametruncatepartitionpartition_name;6、物理文件有哪几种?控制文件包含了什么信息?1)数据文件2)控制文件3)日志文件包含维护和验证有选举权据库完整性的必要信息、例如,控制文件用于识别数据文件和重做日志文件,一个有选举权据库至少
3、需要一个控制文件7、表空间用完了如何增加?三种种扩展方式:1增加数据文件altertablespacenameadddatafile路径size4M;2扩展数据文件大小alterdatabasedatafile路径resize4M;3把数据文件设为自动增长alterdatabasedatafile路径autoextendonnext1Mmaxsize20M;8、SGA包含几部分?Sharedpool(共享池),DataBaseBufferCache(数据缓冲区)RedoLogBuffer(重做日志缓冲区),LargePool,大池,JAVA池。9、DECODE函数的用法?DECODE的语法:D
4、ECODE(value,if1,then1,if2,then2,if3,then3,.,else),表示如果value等于if1时,DECODE函数的结果返回then1,.,如果不等于任何一个if值,则返回else。初看一下,DECODE只能做等于测试,但刚才也看到了,我们通过一些函数或计算替代value,是可以使DECODE函数具备大于、小于或等于功能。还可以转化表结构!10、DELETE和TRUNCATE的区别?答:1、TRUNCATE在各种表上无论是大的还是小的都非常快。如果有ROLLBACK命令DELETE将被撤销,而TRUNCATE则不会被撤销。2、TRUNCATE是一个DDL语言,
5、向其他所有的DDL语言一样,他将被隐式提交,不能对TRUNCATE使用ROLLBACK命令。3、TRUNCATE将重新设置高水平线和所有的索引。在对整个表和索引进行完全浏览时,经过TRUNCATE操作后的表比DELETE操作后的表要快得多。4、TRUNCATE不能触发任何DELETE触发器。5、不能授予任何人清空他人的表的权限。6、当表被清空后表和表的索引讲重新设置成初始大小,而delete则不能。7、不能清空父表。11、谈谈你对事务的理解?ORACLE事务从COMMIT、ROLLBACK、连接到数据库或开始第一条可执行的SQL语句时开始,到一条COMMIT、ROLLBACK语句或退出数据库时
6、结束。如果在一个事务中包含DDL语句,则在DDL语句的前后都会隐含地执行COMMIT语句,从而开始或结束一个事务。如果一个事务由于某些故障或者由于用户改变主意而必须在提交前取消它,则数据库被恢复到这些语句和过程执行之前的状态。利用ROLLBACK语句可以在COMMIT命令前随时撤消或回退一个事务。可以回退整个事务,也可以会退部分事务,但是不能回退一个已经被提交的事务。回退部分事务的ROLLBACK命令为:ROLLBACKtosavepoint存储点名存储点是用户放入事务中的标记,用来表示一个可被回退的位置。存储点通过在事务中放入一个SAVEPOINT命令而被插入。该命令的语法是:SAVEPOI
7、NT存储点名如果在ROLLBACK语句中没有给出存储点名,则整个事务被回退。12、给表A加一列abc口述?数据库正在应用时应先使数据库处于静默状态再altertableaaddabcvarchar2(10),如果不是就直接用!13、客户端连接服务器需要修改什么文件?tnsname.ora,listener.ora14、索引重建的概念?说说索引重建的意义?当我们创建索引时,oracle会为索引创建索引树,表和索引树通过rowid(伪列)来定位数据。当表里的数据发生更新时,oracle会自动维护索引树。但是在索引树中没有更新操作,只有删除和插入操作。例如在某表id列上创建索引,某表id列上有值“1
8、01”,当我将“101”更新为“110”时,oracle同时会来更新索引树,但是oracle先将索引树中的“101”标示为删除(实际并未删除,只是标示一下),然后再将“110”写到索引树中。如果表更新比较频繁,那么在索引中删除标示会越来越多,这时索引的查询效率必然降低,所以我们应该定期重建索引。来消除索引中这些删除标记。一般不会选择先删除索引,然后再重新创建索引,而是rebuild索引。在rebuild期间,用户还可以使用原来的索引,并且rebuild新的索引时也会利用原来的索引信息,这样重建索引会块一些。15、你对游标的理解,游标的分类,使用方法?游标是结果集数据中的指针,作用是为遍历结果集
9、时,存储每条记录的结果,1.声明游标,2.打开游标,3.提取游标,4.关闭游标游标for循环显式游标,隐式游标,游标变量!16、存储过程的用法?在存储过程中异常的处理,分类?举两个预定义异常的例子?存储过程:是预编译数据库SQL的集合存储过程是预编译过的,执行时勿须编译,执行速度更快,存储过程封装了一批SQL语句,便于维护数据的完整性与一致性。并且可以多次调用。异常:自定义,预定义,非预定义No_Data_FoundToo_Many_RowsCASE_NOT_FOUND17、谈谈你对分区索引的理解,说说分类和区别?分区表和一般表一样可以建立索引,分区表可以创建局部索引和全局索引。当分区中出现许
10、多事务并且要保证所有分区中的数据记录的唯一性时采用全局索引。1.3.1.局部索引分区的建立:SQLcreateindexdinya_idx_tondinya_test(item_id)2local3(4partitionidx_1tablespacedinya_space01,5partitionidx_2tablespacedinya_space02,6partitionidx_3tablespacedinya_space037);Indexcreated.SQL看查询的执行计划,从下面的执行计划可以看出,系统已经使用了索引:SQLselect*fromdinya_testpartition
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 华为 试题 答案 Oracle DBA 数据库 管理员 JAVA 程序员 架构 师必看说课 讲解
限制150内