Oracle程序员面试分类模拟4_第1页
Oracle程序员面试分类模拟4_第2页
Oracle程序员面试分类模拟4_第3页
Oracle程序员面试分类模拟4_第4页
Oracle程序员面试分类模拟4_第5页
已阅读5页,还剩3页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Oracle程序员面试分类模拟4一、选择题1.

ViewtheExhibitsandexaminethestructuresofthePRODUCTS,SALES,andCUSTO(江南博哥)MERStables.Youissuethefollowingquery:

A.Itexecutessuccessfully.B.ItproducesanerrorbecausetheNATURALjoincanbeusedonlywithtwotables.C.ItproducesanerrorbecauseacolumnusedintheNATURALjoincannothaveaqualifier.D.ItproducesanerrorbecauseallcolumnsusedintheNATURALjoinshouldhaveaqualifier.正确答案:C[解析]题目问的是对于SQL语句查询输出哪项是正确的,自然连接查询结果列不能有别名限定词,实验如下:

去掉“p.”即可正确查询。

本题中,对于选项A,可以正常执行,说法错误,会产生ORA-25155错误。

对于选项B,自然连接只能用于2个表中,也可以用于2个视图中。所以,选项B错误。

对于选项C,经过以上实验,选项C说法正确。

对于选项D,选项说所有列必须要有别名,说法错误,不能含有别名。

2.

为数据表创建索引的目的是______。A.提高查询的检索性能B.创建唯一索引C.创建主键D.归类正确答案:A

3.

下列对于数据库索引的说法中,一定错误的是______。A.索引可以提升查询,分组和排序的性能B.索引不会影响表的更新、插入和删除操作的效率C.全表扫描不一定比使用索引的执行效率低D.对于只有很少数据值的列,不应该创建索引正确答案:B

二、简答题1.

请使用ON子句连接查询SCOTT.EMP和SCOTT.DEPT表,要求显示EMPNO、ENAME、JOB和SAL字段。正确答案:题目要求使用ON子句,这是一个考查点,SQL语句如下:

情景设计:很多“八零后”、“九零后”都有属于自己的QQ空间,在登陆QQ空间中时候,有一个重要信息就是“谁来看过我”,换句话说,就是哪位好友曾经访问过自己的空间,普通用户好像只能查看最近访问过空间的100个人,“黄钻”等级的可以看的人更多,对此假设有如下的表,在SQL中“--”表示注释:

基于上面的情景设计,用SQL语句来完成如下的笔试题目,假设自己的QQ号码为100:2.

查询自己QQ号码的昵称,创建日期。正确答案:考查单表查询。SQL语句以及运行结果如下:

3.

查询去年有多少人申请了QQ号码。正确答案:考查函数的运用、COUNT和WHERE子句的过滤。SQL语句以及运行结果如下:

4.

查询QQ号码中含有3的QQ号。正确答案:考查模糊查询。SQL语句以及运行结果如下:

5.

假设想知道昨天有谁来看过自己的QQ空间,该如何书写,要求展示看过我空间的QQ号码和昵称。正确答案:考查多表连接查询。SQL语句以及运行结果如下:

6.

查询近一周之内来自己空间浏览的好友频度,要求展示好友昵称和来自己空间次数。正确答案:考查分组函数GROUPBY的运用。SQL语句以及运行结果如下:

7.

查询近一周之内来自己空间次数大于1的人有哪些?要求展示来访者昵称和来自己空间次数。正确答案:考查HAVING和GROUPBY的运用。SQL语句以及运行结果如下:

8.

查询近一周之内来自己空间次数大于1且不是自己QQ好友的人有哪些?要求展示好友昵称和来自己空间次数。正确答案:考查子查询。

9.

查询近一周之内来自己空间最频繁的一位好友是谁?要求展示好友昵称和来自己空间次数。正确答案:主要考查TOPN的查询。SQL语句以及运行结果如下:

10.

删除自己看过QQ号码为102的记录。正确答案:考查DELETE删除数据的运用。SQL语句以及运行结果如下:

11.

更新自己的ee昵称为“^_^”。正确答案:考查UPDATE更新数据的运用。SQL语句以及运行结果如下:

12.

什么是SQL注入?正确答案:所谓SQL注入(SQLInjection)就是通过把SQL命令插入到WEB表单提交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令的目的。例如,在代码中使用下面的SQL语句:SQL="SELECTTOP1*FROMUSERWHERENAME='''+NAME+'''ANDPASSWORD='''+PASSWORD+'''"”来验证用户名和密码是否正确,其中,NAME和PASSWORD是用户输入的内容,当用户输入用户名为AA,密码为“BB或'A'='A'”,那么拼接出来的SQL语句就为“SELECTTOP1*FROMUSERWHERENAME='AA'ANDPASSWORD='BB'OR'A'='A'”,那么只要USER表中有数据,这条SQL语句就会有返回结果。这就达到了SQL注入的目的。

作为DBA,永远不要信任用户的输入,相反,必须认定用户输入的数据永远都是不安全的,对用户输入的数据必须都进行过滤处理。

为了防止SQL注入,需要注意以下几个要点:

(1)永远不要信任用户的输入。可以通过正则表达式或限制长度的方式对用户的输入进行校验;对单引号进行转换等。

(2)永远不要使用动态拼装SQL,可以使用参数化的SQL或者直接使用存储过程进行数据查询、存取。

(3)永远不要使用管理员权限的数据库连接,建议为每个应用赋予单独的权限。

(4)不要把机密信息直接存放,建议对密码或敏感信息进行加密或HASH处理。

(5)应用的异常信息应该给出尽可能少的提示,最好使用自定义的错误信息对原始错误信息进行包装。

(6)SQL注入的检测一般采取辅助软件或借助网站平台,软件一般采用SQL注入检测工具JSKY,网站平台就有安全平台检测工具:MDCSOFTSCAN等。采用MDCSOFT-IPS可以有效地防御SQL注入、XSS(CrossSiteScripting,跨站脚本攻击,为了不和层叠样式表(CascadingStyleSheets,CSS)的缩写混淆,故将跨站脚本攻击缩写为XSS)攻击等。

13.

热备份和冷备份的区别是什么?正确答案:热备份是在数据库运行的情况下,采用归档方式备份数据的方法,针对归档模式的数据库,在数据库仍旧处于工作状态时进行备份,而冷备份是指在数据库已经正常关闭后,将关键性文件复制到另外位置的一种备份方式,适用于所有模式的数据库。冷备份和热备份的优缺点见表所示。

14.

什么是OLAP和OLTP?正确答案:数据处理大致可以分成两大类:OLTP(On-LineTransactionProcessing,联机事务处理)和OLAP(On-LineAnalyticalProcessing,联机分析处理)。

OLTP是传统的关系型数据库的主要应用,即记录实时的增、删、改,主要是执行基本的、日常的事务处理,例如,在银行存取一笔款,就是一个事务交易。OLTP系统强调数据库处理效率,强调内存各种指标的命中率,强调绑定变量,强调并发操作。一般情况下,OLTP系统数据量少,DML操作比较频繁,并行事务处理多,但是一般都比较短。OLTP表示事务性非常高的系统,一般都是高可用的在线系统,以小的事务以及小的查询为主。评估其系统的时候,一般看其每秒执行的事务数以及SQL执行的数量。在OLTP系统中,单个数据库每秒处理的事务数往往超过几百个,或者是几千个,SELECT语句的执行量每秒几千甚至几万个。典型的OLTP系统有电子商务系统、银行、证券等,例如,美国eBay的业务数据库,就是很典型的OLTP数据库。在Oracle中创建OLTP系统时,使用一般用途或事务处理(GeneralPurposeorTransactionProcessing)模板。

具体而言,OLTP的特点一般有以下几点:①实时性要求高。②数据量不是很大。③交易一般是确定的,所以,OLTP是对确定性的数据进行存取,例如存取款都有一个特定的金额。④并发性要求高,但是有严格的事务完整性和安全性要求。例如,有可能你和你的家人同时在不同的银行取同一个账号的存款。

OLAP的概念最早是由关系型数据库之父E.F.Codd于1993年提出的,他认为OLTP己不能满足终端用户对数据库查询分析的需要,SQL对大型数据库进行的简单查询也不能满足终端用户分析的要求。用户的决策分析需要对关系数据库进行大量计算才能得到结果,而查询的结果并不能满足决策者提出的需求。OLAP是DSS(DecisionSupportSystem,决策支持系统)的一部分,是数据仓库的核心部分。DSS是辅助决策者通过数据、模型和知识,以人机交互方式进行半结构化或非结构化决策的计算机应用系统。DSS是管理信息系统(ManagementInformationSystem,MIS)向更高一级发展而产生的先进信息管理系统,它为决策者提供分析问题、建立模型、模拟决策过程和方案的环境,调用各种信息资源和分析工具,帮助决策者提高决策水平和质量。所谓数据仓库是对于大量已经由OLTP形成的数据的一种分析型的数据库,用于处理商业智能、决策支持等重要的决策信息;数据仓库是在数据库应用到一定程序之后而对历史数据的加工与分析。OLAP是数据仓库系统的主要应用,支持复杂的分析操作,侧重决策支持,并且提供直观易懂的查询结果。数据量大,DML少。典型的应用就是复杂的动态报表系统。在Oracle中创建OLAP系统时,使用数据仓库(DataWarehouse)模板。

具体而言,OLAP的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论