Oracle笔试题参考答案.docx
- 文档编号:5543428
- 上传时间:2023-05-08
- 格式:DOCX
- 页数:27
- 大小:197.18KB
Oracle笔试题参考答案.docx
《Oracle笔试题参考答案.docx》由会员分享,可在线阅读,更多相关《Oracle笔试题参考答案.docx(27页珍藏版)》请在冰点文库上搜索。
Oracle笔试题参考答案
f
(考试时间:
180分钟试卷满分:
300分)
注意事项:
1.答卷前,请关闭手机,禁止使用设备对试卷进行拍照。
2.请务必将个人相关信息填写在相应位置。
3.请将答案填写在相应位置,否则无效。
第一部分单选题(每题2分,满分80分)
做题时,先将答案标在试卷上,录音结束后,你将有两分钟的时间将试卷上的答案转涂到答题卡上。
一、单选题(每题2分*40=80分)
1.使用Oracle数据库,必须启动哪个服务()
A.OracleHOME_NAMETNSListenerB.OracleServiceSID
C.OracleMTSRecoveryServiceD.OracleJobSchedulerSID
2.在Windows操作系统中,Oracle的()服务监听并接受来自客户端应用程序的连接请求。
A.OracleHOME_NAMETNSListener B.OracleServiceSID
C.OracleHOME_NAMEAgent D.OracleHOME_NAMEHTTPServer
3.用二维表结构表达实体集的模型是()
A.概念模型B.层次模型C.网状模型D.关系模型
4.Oracle 11g 是基于( )的
A.关系型B.文件系统C.层次型D.网络型
5.()代表了数据库中最小粒度的逻辑数据存储层次。
A.盘区B.表空间C.数据块D.数据文件
6.你使用下列命令连接数据库:
sqlplusscott/***************:
1522/orcl.目标数据库是哪一个?
()
A.B.tigerC.orclD.scott
7.设有一个关系:
DEPT(DNO,DNAME,LOC),如果要找出倒数第三个字母为W,并且至少包含4个字母的DNAME,则查询条件子句应写成WHEREDNAMELIKE()
A.‘__W_%’B.‘_%W__’C.‘_W__’D.‘_W_%’
8.下列解锁scott账户的命令正确的是()
A、updateuserscottaccountunlock;
B、alteruserscottaccountunlock;
C、alteruserscottunlock;
9.having ,where,groupby的正确执行顺序是()
A、having,where,groupby
B、groupby,having,where
C、where,having,groupby
D、where,groupby,having
10.分析下面两个SQL语句,选项中说法正确的有()
SELECT last_name, salary , hire_date
FROM EMPLOYEES
ORDER BY salary DESC;
SELECT last_name, salary , hire_date
FROM EMPLOYEES
ORDER BY 2 DESC;
A、两个SQL语句的结果完全相同
B、第二个SQL语句产生语法错误
C、没有必要指定排序方式为desc,因为默认的排序方式是降序排序
D、可以通过为第二个SQL语句的salary列添加列别名来使两个SQL语句得到相同的结果
注意:
Orderbygroupby后跟数字,代表select后的字段的位置
11.数据库设计中用关系模型表示实体和实体之间的联系。
关系模型的结构是()。
A、层次结构
B、二维表结构
C、网状结构
D、封装结构
12哪个SQL语句生成计算列SALARY*12的别名—年薪?
()
A、
SELECT ename, salary*12 'Annual Salary'
FROM employees;
B、
SELECT ename, salary*12 "Annual Salary"
FROM employees;
C、
SELECT ename, salary*12 AS Annual Salary
FROM employees;
D、
SELECT ename, salary*12 AS INITCAP("ANNUAL SALARY")
FROM employees
别名中间有空格必须双引号
函数INITCAP()是将每个单词的第一个字母大写,其它字母变为小写返回.
单词由空格,控制字符,标点符号等非字母符号限制.
13.并发操作会带来哪些数据不一致性?
()
A、丢失修改、不可重复读、读脏数据、死锁
B、不可重复读、读脏数据、死锁
C、丢失修改、读脏数据、死锁
D、丢失修改、不可重复读、读脏数据
14.对于满足SQL92标准的SQL语句:
SELECTfoo,count(foo)FROMpokesWHEREfoo>10GROUPBYfooHAVINGORDERBYfoo,其执行的顺序应该为()。
A、FROM->WHERE->GROUPBY->HAVING->SELECT->ORDERBY
B、FROM->GROUPBY->WHERE->HAVING->SELECT->ORDERBY
C、FROM->WHERE->GROUPBY->HAVING->ORDERBY->SELECT
D、FROM->WHERE->ORDERBY->GROUPBY->HAVING->SELECT
15.使用哪个SELECT语句从系统日期中提取年份并以“1998”格式显示?
A、
SELECT TO_CHAR(SYSDATE,'yyyy')
FROM dual;
B、
SELECT TO_DATE(SYSDATE,'yyyy')
FROM dual;
C、
SELECT DECODE(SUBSTR(SYSDATE, 8), 'YYYY')
FROM dual;
D、
SELECT DECODE(SUBSTR(SYSDATE, 8), 'year')
FROM dual;
E、
SELECT TO_CHAR(SUBSTR(SYSDATE, 8,2),'yyyy')
FROM dual;
16.观察下表(EMP)下列SQLSQL语句正确的是()
注意:
oracle 两个时间相减默认的是天数HIREDATE+10是加10天
To_date()第一个参数是字符串类型
To_char()第一个参数是日期类型
A、
SELECT ENAME,to_date(SYSDATE-HIREDATE,'yyyy-mm-dd') FROM EMP;
B、
SELECT ENAME,to_date(HIREDATE+10,'yyyy-mm-dd') FROM EMP;
C、
SELECT ENAME,to_char(HIREDATE-10,'yyyy-mm-dd') FROM EMP;
D、
SELECT ENAME,to_char(SYSDATE-HIREDATE,'yyyy-mm-dd') FROM EMP;
17.观察下表(EMP),本月老板要在所有员工原有奖金的基础上多发500元的奖金,查询出所有员工姓名以及他的奖金,下列SQL语句能够满足该需求的是()
1、nvl(value1,value2)
这个函数的意思是如果value1的值为null,那么函数返回value2的值 ,如果value1不为空,那么就返回value1的值。
2、nvl2(value1,value2,value3)
这个函数的意思是如果value1的值为null函数返回value3 否则函数返回value2 也就是说函数永远不会返回value1
A、
SELECT ENAME,COMM+500 FROM EMP;
B、
SELECT ENAME,NVL(COMM,0)+500 FROM EMP;
C、
SELECT ENAME,NVL(COMM+500,0) FROM EMP;
D、
SELECT ENAME,NVL2(COMM,0)+500 FROM EMP;
18.客表(customers)中有一存储顾客姓名的字段(customerName),现在想显示"欢迎customerName光临小店"的字样,下列SQL语句能够满足该需求的是()
A、
SELECT "欢迎"||customerName||"光临小店" FROM customers;
B、
SELECT '欢迎'||customerName||'光临小店' FROM customers;
C、
SELECT '欢迎'|customerName|'光临小店' FROM customers;
D、
SELECT "欢迎"|customerName|"光临小店'"FROM customers;
19.Whichstatementshowsthemaximumsalarypaidineachjobcategoryofeachdepartment?
( )
A、Selectdept_id,job_cat,max(salary)fromemployeeswheresalary>max(salary);
B、Selectdept_id,job_cat,max(salary)fromemployeesgroupbydept_id,job_cat;
C、Selectdept_id,job_cat,max(salary)fromemployeesgroupbydept_id;
D、Selectdept_id,job_cat,max(salary)fromemployeesgroupbydept_id,job_cat,salary;
20.关于右外连接查询的说法不正确的是()
A、两表进行右外连接查询和左外连接查询查询出的结果都是一样的
B、右外连接查询是以右侧的表为主表
C、右外连接查询可以和左外连接查询相互转换
D、右外连接查询查询时右表中的记录会全部显示
21.观察employees表的表结构,经理要求你创建一个视图EMP_VU,该视图允许用户通过视图向表中插入数据,选项中符合要求的是()
A、
CREATE VIEW emp_vu AS
SELECT employee_id, emp_name,
department_id
FROM employees
WHERE mgr_id IN (102, 120);
B、
CREATE VIEW emp_vu AS
SELECT employee_id, emp_name, job_id,
department_id
FROM employees
WHERE mgr_id IN (102, 120);
C、
CREATE VIEW emp_vu AS
SELECT department_id, SUM(sal) TOTALSAL
FROM employees
WHERE mgr_id IN (102, 120)
GROUP BY department_id;
D、
CREATE VIEW emp_vu AS
SELECT employee_id, emp_name, job_id,
DISTINCT department_id
FROM employees;
22.观察customers表的表结构,其中CUSTOMER_ID是表的主键。
下列哪个选项能够查询出“LosAngeles”和“SanFrancisco”的城市地址(city_address),以及每个城市里顾客的数量()
A、
SELECT city_address, COUNT(*)
FROM customers
WHERE city_address IN ('Los Angeles', 'San Francisco');
B、
SELECT city_address, COUNT(*)
FROM customers
WHERE city_address IN ('Los Angeles', 'San Francisco')
GROUP BY city_address;
C、
SELECT city_address, COUNT(customer_id)
FROM customers
WHERE city_address IN ('Los Angeles', 'San Francisco')
GROUP BY city_address, customer_id;
D、
SELECT city_address, COUNT(customer_id)
FROM customers
GROUP BY city_address IN ('Los Angeles', 'San Francisco');
23.执行下列SQL语句的集合,下列选项正确的是()
CREATE TABLE dept(deptno NUMBER
(2),dname VARCHAR2(14),
loc VARCHAR2(13));
ROLLBACK;
DESCRIBE DEPT
A、DESCRIBEDEPT语句显示DEPT表的结构。
B、ROLLBACK语句释放DEPT表占用的存储空间。
C、DESCRIBEDEPT语句返回错误ORA-04043:
objectDEPT不存在。
D、DESCRIBEDEPT语句仅在ROLLBACK语句之前引入了COMMIT语句时才显示DEPT表的结构。
24.在PL/SQL代码段的异常处理块中,捕获所有异常的关键词是______。
A、OTHERSB、ALLC、ExceptionD、ERRORS
常见的预定义异常
ZERO_DIVIDE:
除数等于零
DUP_VAL_ON_INDEX:
违反唯一性约束
SYS_INVALID_ID:
无效的ROWID字符串
TIMEOUT_ON_RESOURCE:
Oracle在等待资源时超时
others可以代表所有异常
声明
业务处理
异常处理
25.关于关系范式的规范化,下列说法正确的是()
A、数据库系统中的关系所属范式越高越好,因为所属范式越高,存储表所占内存开销越小
B、数据库系统中的关系所属范式越低越好
C、一般对表分解到3NF即可
D、不能对表只分解到2NF
26.关于序列的说法正确的是()
A、一旦创建,序列属于特定模式(schema)。
B、一旦创建,序列链接到特定的表。
C、一旦创建,序列将自动提供给所有用户。
D、只有DBA可以控制某个表使用哪个序列。
E、一旦创建,序列将自动在所有INSERT和UPDATE语句中使用。
27、PL/SQL中,要引用表中字段的数据类型,应使用()
A.%rowtype
B.%found
C.%type
D.%rowcount
28.下面哪个SQL命令用来向表中添加列()
A、MODIFYTABLETableNameADDCOLUMNColumnName
B、MODIFYTABLETableNameADDColumnName
C、ALTERTABLETableNameADDCOLUMNColumnName
D、ALTERTABLETableNameADDColumnNameType
ALTERTABLE<表名>
[ADD[COLUMN]<新列名><数据类型>[完整性约束]]
[ADD<表级完整性约束>]
[DROP[COLUMN]<列名>[CASCADE|RESTRICT]]
[DROPCONSTRAINT<完整性约束名>[CASCADE|RESTRICT]]
[ALTER COLUMN <列名><数据类型>]
CASCADE:
级联操作
RESTRICT:
默认,如果子表中有匹配的记录,则不允许对父表对应候选键进行update/delete操作
29.一辆汽车由多个零部件组成,且相同的零部件可适用于不同型号的汽车,则汽车实体集与零部件实体集之间的联系是()?
A、1:
M
B、1:
1
C、M:
1
D、M:
N
30.当删除一个用户的操作时,在什么情况下,应该在DROPUSER语句中使用CASCADE(级联)选项?
()
A.这个模式包含了对象
B.这个模式没有包含了对象
C.这个用户目前与数据库连接着
D.这个用户必须保留但是用户的对象需要删除
如果要删除的(用户)模式包括了对象,要在DROPLISER语句中使用CASCADE子句来删除模式中的所有对象
不能删除当前正在与Oracle服务器相连的用户
当一个用户被删除之后,该用户中的所有对象也都会从系统中消失
31.要截断(TRUNCATE)其他用户拥有的一个表,需要哪一个权限?
()
A.ALTERTABLEB.DROPANYTABLEC.DELETEANYTABLED.TRUNCATEANYTABLE
TRUNCATE清空表中数据,速度快,不可回滚
Delete删除表中数据,可以回滚
32.利用PL/SQL语句将”数据库原理”课程的学分赋值给变量的语句是()
A、selectxuefeninto@xuefenfromcoursewherecname=’数据库原理’
B、selectxuefenfromcoursewherecname=’数据库原理’andxuefen=@xuefen
C、select@xuefen=xuefenfromcoursewherecname=’数据库原理’
D、selectxuefen=@xuefenfromcoursewherecname=’数据库原理’
33.如下SQL语句中,____可能返回null值。
(1)selectcount(*)fromt1;
(2)selectmax(col1)fromt1;
(3)selectconcat(‘max=’,max(col1))fromt1;
A、
(1)可能,
(2)和(3)不可能
B、
(2)可能,
(1)和(3)不可能
C、(3)可能,
(1)和
(2)不可能
D、
(1)不可能,
(2)和(3)可能
此题Oracle选B,如果是Oracle外的MySQL等则选D。
因MySQL数中有空则结果空。
Count(*)不可能返回空值,即使一条记录都没有,返回0;
如果表中没有记录),max(coll)返回空;
(3)中就算max(coll)返回null,也仍将剩余“max=”。
34.下面有关tablespace和datafile之间的关系的描述,说法错误的是?
()
A、一个tablespace可以有一个或多个datafile
B、每个datafile只能在一个tablespace内
C、table中的数据,通过hash算法分布在tablespace中的各个datafile中
D、datafile是逻辑上的概念,tablespace则在物理上储存了数据库的种种
解析:
datafile是物理上的概念,tablespace则在逻辑上储存了数据库的种种
selectnamefromv$datafile;//查看数据文件
F:
\APP\ADMINISTRATOR\ORADATA\ORCL\SYSTEM01.DBF
selectnamefromv$controlfile;
selectmemberfromv$logfile;
35.视图定义是()
A.一个基表中导出的基表
B.一个基表中导出的虚表
C.一个或几个基表或视图中导出的基表
D.一个或几个基表或视图中导出的虚表
36.下面有关索引的描述正确的是()
A.不可以在多个列上创建复合索引。
B.可以在多个列上创建复合索引。
C.索引列中的数据不能重复出现。
D.索引列中的数据必须是数值型。
37.如果希望更新表authors中的first_name列为非空,那么可以使用哪个语句?
()
A.altertableauthorsaddfirst_namenotnull
B.altertableauthorsmodifyfirst_namenotnull
C.altertableauthorsalterfirst_namenotnull
D.altertableauthorsdropfirst_namenotnull
38.下列哪一个命令可以将一个文件的备份还原到数据库原目录中?
()
A.RECOVERB.BACKUPC.COPYD.RESTORE
39.下列哪一个命令可以用来执行不完全恢复?
()
A.RESTOREDATABASEUNTIL
B.RECOVERDATABASEUNTIL
C.RECOVERDATAUNTIL
D.RESTOREDATAUNTIL
40.观察下表(EMP)需要查询出奖金(COMM)为空,正确的SQL语句是()
A、
SELECT * FROM EMP WHERE COMM = NULL;
B、
SELECT * FROM EMP WHERE COMM = 0
C、
SELECT * FROM EMP WHERE COMM IS NULL;
D、
SELECT * FROM EMP WHERE COMM IS 0;
二、多选题(每题3分*20=60分)
1、Oracle的数据库由()类型的文件组成()
A、日志文件
B、控制文件
C、数据文件
D、配置文件
2.在哪种情况下,会用到外连接查询?
(请选出两项)
A、要连接的表具有NOTNULL列
B、要连接的表只有匹配的数据
C、要连接的列具有NULL值
D、要连接的表只有不匹配的数据
E、要连接的表具有匹配和不匹配的数据
F、仅当表具有主键-外键关系时
3.关于where和having子句说法正确的有?
(请选出两项)
A、WHERE子句可用于限制行和组。
B、WHERE子句只能用于限制行。
C、HAVING子句可用于限制行和组。
D、HAVING子句只能用于限制组。
E、如果查询使用HAVING子句,则不能在查询中使用WHERE子句。
F、HAVING子句不能在子查询中使用。
4.关于子查询下列叙述正确的有?
(请选出三项)
A、单行子查询只能检索一个列和一行
B、单行子查询只能检索一行,但能检索许多列
C、多行子查询可以检索多行、多列
D、多行子查询结果可以被用来作为>”运算符的比较项
E、单行子查询可以使用IN运算符
F、多行子查询结果可以使用“=”来和别的值比较
5.观察下表(EMP)
经理要求你查询出所有员工的姓名和工资,查询结果按工资降序排序,相同工资的按姓名升序排序,能够完成该需求的是?
(请选出三项)
A、
SELECT ENAME,SAL FROM EMP ORDER BY 2
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Oracle 笔试 参考答案
![提示](https://static.bingdoc.com/images/bang_tan.gif)