oracle笔试

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

1.对字符串操作的函数?答:ASCII()--函数返回字符表达式最左端字符的ASCII码值CHR()--函数用于将ASCII码转换为字符--如果没有输入0~255之间的ASCII码值CHR函数会返回一个NULL值--应该是必须给chr()赋数字值concat(str,str)连接两个字符串LOWER()--函数把字符串全部转换为小写UPPER()--函数把字符串全部转换为大写LTRIM()--函数把字符串头部的空格去掉RTRIM()--函数把字符串尾部的空格去掉TRIM()--同时去掉所有两端的空格实际上LTRIM(),RTRIM(),TRIM()是将指定的字符从字符串中裁减掉其中LTRIM(),RTRIM()的格式为xxxx(被截字符串,要截掉的字符串),但是TRIM()的格式为TRIM(要截掉的一个字符from被截的字符串)SUBSTR()--函数返回部分字符串INSTR(String,substring)--函数返回字符串中某个指定的子串出现的开始位置,如果不存在则返回0REPLACE(原来的字符串,要被替换掉的字符串,要替换成的字符串)SOUNDEX()--函数返回一个四位字符码--SOUNDEX函数可用来查找声音相似的字符串但SOUNDEX函数对数字和汉字均只返回NULL值2、事务概念答案:事务是这样一种机制,它确保多个SQL语句被当作单个工作单元来处理。事务具有以下的作用:*一致性:同时进行的查询和更新彼此不会发生冲突,其他用户不会看到发生了变化但尚未提交的数据。*可恢复性:一旦系统故障,数据库会自动地完全恢复未完成的事务。3、oracle中查询系统时间答:selectsysdatefromdual4、触发器的作用,什么时候用触发器,创建触发器的步骤,触发器里是否可以有commit,为什么?答案:触发器是可以由事件来启动运行的,存在于数据库服务器中的一个过程。他的作用:可以实现一般的约束无法完成的复杂约束,从而实现更为复杂的完整性要求。使用触发器并不存在严格的限定,只要用户想在无人工参与的情况下完成一般的定义约束不可以完成的约束,来保证数据库完整性,那么就可以使用触发器。由于触发器主要是用来保证数据库的完整性的,所以要创建一个触发器,首先要明确该触发器应该属于那一种(DML,INSTEADOF,SYSTEM)因为他们各有个的用途;其次就是要确定触发器被触发以后所设计到的数据。出发器中不可以使用COMMIT。5.数字函数abs()绝对值exp(value)e的value次幂ceil()大于等于该值的最小整数floor()小于等于该值的最大整数trunc(value,precision)保留precision个小数截取valueround(value,precision)保留precision个小数对value进行四舍五入sign()根据值为正负零返回1,-1,0mod()取模操作power(value,exponent)value的exponent次幂sqrt()求平方根4、关系数据库系统与文件数据库系统的区别在那里?关系数据库系统一般适用那些方面?答案:关系数据库系统文件系统的区别在于:首先,关系性数据库的整体数据是结构化的,采用关系数据模型来描述,这是它与文件系统的根本区别。(数据模型包括:数据结构,数据操作以及完整性约束条件)其次,关系数据库系统的共享性高,冗余低可以面向整个系统,而文件系统则具有应用范围的局限性,不易扩展。第三,关系数据库系统采用两级映射机制保证了数据的高独立性,从而使得程序的编写和数据都存在很高的独立性。这方面是文件系统无法达到的,它只能针对于某一个具体的应用。(两级映射:保证逻辑独立性的外模式/模式映射和保证物理独立性的内模式/模式映射。外模式:用户模式,是数据库用户的局部数据的逻辑结构特征的描述。模式:数据库全体数据的逻辑结构特征的描述。内模式:也就是数据最终的物理存储结构的描述。)第四,就是关系性数据库系统由统一的DBMS进行管理,从而为数据提供了如安全性保护,并发控制,完整性检查和数据库恢复服务。5、触发器的概念,存储过程的概念.答案:触发器:是存储在数据库中的过程,当表被修改(增、删、改)时它隐式地被激发。存储过程:是数据库语言SQL的集合,同样也存储在数据库中,但是他是由其他应用程序来启动运行或者也可以直接运行。6、基本SQL语句有哪些.答案:select、insert、update、delete、create、drop、truncate1.中级8、什么是事务一致性?选择熟悉的数据库实现一个事务处理,如信用卡提款.答案:事务的一致性:是事务原子性的体现,事务所对应的数据库操作要么成功要么失败没有第三种情况。事务不管是提交成功与否都不能影响数据库数据的一致性状态。事务:用户定义的一个数据库操作序列,这些操作要么全部成功完成要么全部不做,是一个不可分割的整体。定义事务的SQL语句有:BEGINTRANSACTION,COMMIT,ROLLBACK。事务的原子性:就是事务所包含的数据库操作要么都做,要么都不做.事务的隔离性:事务对数据的操作不能够受到其他事务的影响。事务的持续性:也就是说事务对数据的影响是永久的。对'信用卡提款'这一事务而言就是要保证'提取到现金'和'卡帐号余额'的修改要同时成功或失败.BEGINTRANSACTION读取A的帐户余额BALANCE;BALANCE=BALANCE-AMOUNT转帐金额;IF(BALANCE0)THENROLLBACK;ELSEBEGIN将A的新余额写回;读取B的帐户余额BALANCEB;BALANCEB=BALANCEB+AMOUNT转帐金额;将B的新余额写回;COMMIT;ENDIF;END;9、实际编写和调试存储过程或触发器.答案:10、实现索引的方式?索引的原理?索引的代价?索引的类型?答案:实现索引的方式有两种:针对一张表的某些字段创建具体的索引,如对oracle:createindex索引名称on表名(字段名);在创建表时为字段建立主键约束或者唯一约束,系统将自动为其建立索引。索引的原理:根据建立索引的字段建立索引表,存放字段值以及对应记录的物理地址,从而在搜索的时候根据字段值搜索索引表的到物理地址直接访问记录。引入索引虽然提高了查询速度,但本身占用一定的系统存储容量和系统处理时间,需要根据实际情况进行具体的分析.索引的类型有:B树索引,位图索引,函数索引等。北京亿阳信通一、选择题1.当你执行以下查询语句:SELECTempno,enameFROMempWHEREempno=7782ORempno=7876;在WHERE语句中,以下哪个操作符可以取代OR?A.INB.BETWEEN……C.LIKED.=E.=2.哪个实现IF..THEN…ELSE逻辑?A.INITCAP()B.REPLACE()C.DECODE()D.IFELSE()3.以下哪行有错?1SELECTdeptno2FROMemp3GROUPBYdeptno4HAVINGCOUNT(deptno)=5(SELECTmax(count(deptno))6FROMemp7GROUPBYdeptno);A.Line3B.Line4C.Line5D.Line7E.都没错.4.当一个程序执行了SELECT...FORUPDATE语句,以下哪个步骤必须需要完成?A.执行COMMITorROLLBACK结束transaction,即使并没有数据改变。B.如果有数据改变,则需要执行commitorrollback来结束transaction。C.由于只有数据确实改变后,一个transaction才会开始,所以现在不需要COMMITorROLLBACK被执行。5.以下哪个命令可以被用来从表STATE中drop列UPDATE_DT?A.ALTERTABLESTATEDROPCOLUMNUPDATE_DT;B.ALTERTABLESTATEREMOVECOLUMNUPDATE_DT;C.DROPCOLUMNUPDATE_DTFROMSTATE;D.你不能从这个表中DROP该列.6.哪个命令用来创建一个primarykeyconstraintpk_books在表BOOKS,列ISBN上?请选择一个。A.createprimarykeyonbooks(ISBN);B.createconstraintpk_booksprimarykeyonbooks(ISBN);C.altertablebooksaddconstraintpk_booksprimarykey(ISBN);D.altertablebooksaddprimarykey(ISBN);7.以下哪行有错r?1X:=Y+200;2IFX10THEN3Y:=30;4ELSEIFX40THEN5Y:=20;6ENDIF;A.Line2B.Line3C.Line4D.Line58.一个VIEW被以下语句创建,请问在该VIEW上可进行哪个操作?CREATEVIEWUSA_STATESASSELECT*FROMSTATEWHERECNT_CODE=1WITHREADONLY;A.SELECTB.SELECT,UPDATEC.SELECT,DELETED.SELECT,INSERT二、问答1、请简述ORACLE在UNIX平台下安装的步骤;2、ORACLE的启动方式有哪几种?1、startupnomount非安装启动,这种方式启动下可执行:重建控制文件、重建数据库读取init.ora文件,启动instance,即启动SGA和后台进程,这种启动只需要init.ora文件。2、startupmountdbname安装启动,这种方式启动下可执行:数据库日志归档、数据库介质恢复、使数据文件联机或脱机,重新定位数据文件、重做日志文件。执行“nomount”,然后打开控制文件,确认数据文件和联机日志文件的位置,但此时不对数据文件和日志文件进行校验检查。3、startupopendbname先执行“nomount”,然后执行“mount”,再打开包括Redolog文件在内的所有数据库文件,这种方式下可访问数据库中的数据。4、startup,等于以下三个命令startupnomountalterdatabasemountalterdatabaseopen5、startuprestrict约束方式启动这种方式能够启动数据库,但只答应具有一定特权的用户访问非特权用户访问时,会出现以下提示:ERROR:ORA-01035:Oracle只答应具有RESTRICTEDSESSION权限的用户使用6、startupforce强制启动方式当不能关闭数据库时,可以用startupforce来完成数据库的关闭先关闭数据库,再执行正常启动数据库命令7、startuppfile=参数文件名带初始化参数文件的启动方式先读取参数文件,再按参数文件中的设置启动数据库例:startuppfile=E:Oracleadminoradbpfileinit.ora8、startupEXCLUSIVE3、在ORACLE中控制文件起什么作用?在ORACLE数据库中,控制文件记录着数据库的物理结构和事务控制的值(SCN,CHECKPOINT等),以及一些可以被改写的信息(如备份的元数据).在实例恢复和介质恢复过程中,都要用到控制文件。同时还需要归档日志文件。4、请简述SGA的构成;SGA(SystemGlobalArea)是OracleInstance的基本组成部分,在实例启动时分配。是一组包含一个Oracle实例的数据和控制信息的共享内存结构。主要是用于存储数据库信息的内存区,该信息为数据库进程所共享(PGA不能共享的)。它包含Oracle服务器的数据和控制信息,它是在Oracle服务器所驻留的计算机的实际内存中得以分配,如果实际内存不够再往虚拟内存中写它主要包括:1.数据库高速缓存(thedatabasebuffercache),2.重演日志缓存(theredologbuff

1 / 20
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功