oracle复习题纲.docx
- 文档编号:23732788
- 上传时间:2023-05-20
- 格式:DOCX
- 页数:19
- 大小:23.89KB
oracle复习题纲.docx
《oracle复习题纲.docx》由会员分享,可在线阅读,更多相关《oracle复习题纲.docx(19页珍藏版)》请在冰豆网上搜索。
oracle复习题纲
一、选择题
1.下面哪个命令是用于oracle中数据导出的()〔选择一项〕
A.expB、impC、inputD、output
2.Oracle数据表中,下面哪个可以作为有效的列名( )(选择一项)
A.class
B.123_NUM
C.date
D.#123_NUM
3.Oracle中的三种系统文件分别是()〔选择三项〕
A.数据文件DBF
B.控制文件CTL
C.日志文件LOG
D.归档文件ARC
4.下面哪个命令可以用来查看学生表(表名student)的表结构()〔选择一项〕
A.Selectstudent;
B.Displaystudent;
C.Describestudent;
D.Showstudent;。
5.下面哪个命令不属于数据定义语言(DDL)()(选择一项)
A.altertable…B、dropindex…
C、createview…D、updatetablename…
6.在设计数据库时,要充分考虑数据的完整性或准确性。
下面关于primarykey和unique的描述错误的是( )〔选择一项)
A.primarykey用来在表中设置主键,主键列的值是不能重复的,用来唯一标识表中的每一条记录
B.设为unique的列的值是不能重复的,用来唯一区别unique列的值
C.primarykey列不可以有null值,而unique列是可以有null的
D.primarykey列和unique列都不可以有null值
7.假定有一张表员工表employee,其中一性别字段sex,该列只能存入'男'或'女'。
为了维护数据的完整性,在设计数据库时,最好对sex字段添加约束,请问应该添加什么约束( )(选择一项)
A.primarykeyB、checkC、defaultD、unique
8.为表TEST中ID列添加主键约束的语法是( )〔选择一项〕
A.ALTERTABLETESTCHANGE(IDINTPRIMARYKEY)
B.ALTERTABLETESTADD(IDINTPRIMARYKEY)
C.ALTERTABLETESTMODIFY(IDINTPRIMARYKEY)
D.ALTERTABLETESTADDCONSTRAINTPKPRIMARYKEY(ID)
9.如果表DEPT包含3条记录,现在用如下命令对其进行修改,
ALTERTABLEDEPTADD(COMPNUMBER(4)NOTNULL);
请问下面哪一个说法是正确的?
()(选择一项)
A.该语句在表的最前面插入一个非空列
B.该语句在表的最后插入一个非空列
C.该语句执行完成后,应当立即执行COMMIT语句,以确保更改生效
D.该语句将产生错误
10.关于聚合函数描述错误的是( )〔选择一项)
A.avg(),sum()只能用于数值类型的字段上
B.max(),min()只能用于数值类型的字段上
C.max(),min()可以用于数值类型或日期类型或字符串类型的字段上
D.count()可以用于任何类型的字段上
11.删除emp表中所有数据,且无法rollback,以下语句哪个命令可以实现( )(选择一项)
A.truncatetableemp
B.droptableemp
C.delete*fromemp
D.deletefromemp
12.Oracle中获得当前系统日期的查询语句是( )〔选择一项〕
A.Selectgetdate();
B.Selectsysdate;
C.Selectsysdatefromdual;
D.Selectsysdate()fromdual;
13.你发出命令:
DROPTABLEemp;
此时你还没有明确发出COMMIT命令。
你能用什么命令撤消上面的drop语句所做的操作?
( )〔选择一项〕
A.关闭数据库
B.发出一个ROLLBACK命令
C.终断正在活动的会话
D.什么命令都不可以,因为DDL语句不能被回滚
14.有Oracle表”cd”,它包含属性”cdcode”,”category”和”cdname”,你要查询category取值为”CLASSIC”或”ROCK”的行,你采用语句()(选择两项)
A.SELECT*FROMcdWHEREcategoryIN('CLASSIC','ROCK');
B.SELECT*FROMcdWHEREcategoryBETWEEN'CLASSIC'AND'ROCK';
C.SELECT*FROMcdWHEREcategory='CLASSIC'ANDcategory='ROCK';
D.SELECT*FROMcdWHEREcategory='CLASSIC'ORcategory='ROCK'
15.更改oracle用户HR,使其变为不可用(锁定)状态( )〔选择一项〕
A.UPDATEUSERHRACCOUNTDISABLE;
B.UPDATEUSERHRACCOUNTLOCK;
C.ALTERUSERHRACCOUNTDISABLE;
D.ALTERUSERHRACCOUNTLOCK;
16.INSERTINTOTESTVALUES(‘&ID’,’&NAME’);语句在执行时将()〔选择一项〕
A.编译错:
提示变量未定义
B.运行错:
提示不能识别符号
C.将值&ID和&NAME插入到表中
D.提示用户输入ID和NAME的值,再将输入值插入表中
17.下面关于删除视图的说法哪一个是正确的( )。
(选择一项)
A.删除视图后应立即用COMMIT语句使更改生效
B.删除视图后,和视图关联的表中的数据依然存在
C.视图被删除后视图中的数据也将被删除
D.用deleteVIEW删除视图
18.若updateempsetsalary=1000中缺少where条件:
()(选择一项)
A.更改表中所有记录
B.更改第一条记录
C.记录未更改。
D.提示错误:
缺少where字句
19.在Oracle中,有一个名为seq的序列对象,以下语句能返回序列值但不会引起序列值增加的是( )(选择一项)
A.selectseq.ROWNUMfromdual;
B.selectseq.ROWIDfromdual;
C.selectseq.CURRVALfromdual;
D.selectseq.NEXTVALfromdual;
20.在Oracle中,有一个名为seq的序列对象,假定此时查看seq序列当前值显示为7,那么执行下面的sql
insertintostu(id,name)values(seq.NEXTVAL,'tom');
很不幸,这个insert没有执行成功,随后马上执行rollback,问:
此时查看seq序列当前值显示为()〔选择一项〕
A.6B、8C、7D、不能确定
21.Oracle中,在一个PL/SQL块中调用另一个PL/SQL过程的方法是( )(选择一项)
A.使用CALL语句
B.使用EXECUTE语句
C.使用RUN语句
D直接使用过程名
22.关于聚合函数描述错误的是______。
A.avg(),sum()只能用于数值类型的字段上
B.max(),min()只能用于数值类型的字段上
C.max(),min()可以用于数值类型或日期类型或字符串类型的字段上
D.count()可以用于任何类型的字段上
23.PL/SQL块中哪几部分是可选的()〔选择二项〕
ADeclare
BBegin
CException
D以上均是
24.在触发器中可使用的引用有()〔选一项〕
Anew
BOld
C:
Update
D:
New和:
Old
25.如果表DEPT包含3条记录,现在用如下命令对其进行修改,
ALTERTABLEDEPTADD(COMPNUMBER(4)NOTNULL);
请问下面哪一个说法是正确的______
A.该语句在表的最前面插入一个非空列
B.该语句在表的最后插入一个非空列
C.该语句执行完成后,应当立即执行COMMIT语句,以确保更改生效
D.该语句将产生错误
26.()是用于控制数据访问的语言。
A.DMLB.DDLC.DCLD.DLL
27.数据定义语言是用于()的方法。
〔选择一项〕
A.确保数据的准确性B、定义和修改数据结构
C、查看数据D、删除和更新数据
28.要以自身的模式创建私有同义词,用户必须拥有()系统权限。
〔选择一项〕
ACREATEPRIVATESYNONYM
BCREATEPUBLICSYNONYM
CCREATESYNONYM
DCREATEANYSYNONYM
29.通常情况下,()值可以唯一地标识数据库中的一行。
〔选择二项〕
AROWNUM
BPRIMARYKEY
CUNIQUE
DROWID
30.Oracle数据表中,下面哪个可以作为有效的列名______。
A.classB.123_NUMC.dateD.#123_NUM
31.删除emp表中所有数据,且可以rollback,以下语句哪个命令可以实现( )(选择一项)
Atruncatetableemp
Bdroptableemp
Cdelete*fromemp
Ddeletefromemp
32.你发出命令:
DROPTABLEemp;
此时你还没有明确发出COMMIT命令。
你能用什么命令撤消上面的drop语句所做的操作?
( )〔选择一项〕
A关闭数据库
B什么命令都不可以,因为DDL语句不能被回滚
C发出一个ROLLBACK命令
D终断正在活动的会话
33.以下哪些是有效的Oracle约束类型?
()(选择四项)
A.UNIQUEB.NONUNIQUE
C.CHECKD.CASCADE
E.PRIMARYKEYF.CONSTANTG
G.NOTNULL
34.更改oracle用户HR,使其变为不可用(锁定)状态( )〔选择一项〕
AUPDATEUSERHRACCOUNTDISABLE;
BUPDATEUSERHRACCOUNTLOCK;
CALTERUSERHRACCOUNTLOCK;
DALTERUSERHRACCOUNTDISABLE;
35.下面关于删除视图的说法哪一个是正确的( )。
(选择一项)
A删除视图后应立即用COMMIT语句使更改生效
B删除视图后,和视图关联的表中的数据不再存在
C视图被删除后视图中的数据也将被删除
D用dorpVIEW删除视图
36.( )函数通常用来计算累计排名、移动平均数和报表聚合等。
〔选择一项)
A汇总
B分析
C分组
D单行
37.在Oracle中,有一个名为seq_id的序列对象,假定此时查看seq_id序列当前值显示为100,那么执行下面的sql:
insertintotest(id,name)values(seq_id.NEXTVAL,'tom');
很不幸,这个insert没有执行成功,随后马上执行rollback,问:
此时查看seq_id序列当前值显示为()〔选择一项〕
A.99B、100
C、101D、不能确定
38.PL/SQL块中不能直接使用的SQL命令是()〔选一项〕
A.SELECT
B.INSERT
C.UPDATE
DDROP
39.在触发器中可使用的引用有()〔选一项〕
A.new
B.Old
C.:
Update
D.:
New和:
Old
40.下面哪些是过程中的有效参数模式?
( )〔不定项选择〕
A.INB.INOUTC.OUTD.OUTIN
41.一般在()中有机会使用:
NEW和:
OLD
A.游标B.存储过程
C.函数D.触发器
42.在Oracle中,PL/SQL块中定义了一个带参数的游标:
CURSORemp_cursor(dnumNUMBER)IS
SELECTsal,commFROMempWHEREdeptno=dnum;
那么正确打开此游标的语句是( )
A.OPENemp_cursor;
B.OPENemp_cursorFOR20;
C.OPENemp_cursorUSING20;
D.FORemp_recINemp_cursor(20)LOOP…ENDLOOP;
43.()是一个单一的逻辑工作单元。
A.记录B.数据库
C.事务D.字段
44.当每个非主键列完全依赖于(整个)主键列时,关系设计属于下列哪一种形式()
A.第一范式B.第二范式
C.第三范式D.第四范式
45.下面的查询中哪一个会产生笛卡尔集?
()
A.SELECTe.empno,e.ename,e.deptno,d.deptno,d.locFROMempe,deptd
WHEREe.deptno=d.deptno;
B.SELECTe.empno,e.ename,e.deptno,d.deptno,d.locFROMempe,deptd;
C.SELECTe.empno,e.ename,e.deptno,d.deptno,d.locFROMempe,deptd
WHEREe.empno=101ande.deptno=d.deptno;
D.SELECTe.empno,e.ename,e.deptno,d.deptno,d.locFROMempe,deptd
WHEREe.deptno=d.deptnoandd.deptno=60;
46.当给一个有主键的表中插入重复行时,将引发下列哪个异常?
()
A.NO_DATA_FOUNDB.TOO_MANY_ROWS
C.DUP_VAL_ON_INDEXD.ZERO_DIVIDE
47.授予删除任何表的系统权限(DROPANYTABLE)给user1,并使其能继续授该权限给其他用户,以下正确的SQL语句是()
A.Grantdropanytabletouser1;
B.Grantdropanytabletouser1withadminoption;
C.Grantdroptabletouser1;
D.Grantdropanytabletouser1withcheckpotion;
48.数据库中有两个用户scott和myuser,物资表wz是属于myuser用户的,但当前用户是scott,要求查询物资表wz(wno,wname,wtype,wunit)物资单位wunit列为null的记录,取结果的前5条记录显示,以下正确的SQL语句是()
A.select*fromscott.wzwherewunitisnullandrownum<5;
B.select*frommyuser.wzwherewunit=nullandrownum<5;
C.select*frommyuser.wzwherewunitisnullandrownum<6;
D.select*formscott.wzwherewunitisnullandrownum<6;
49.已创建序列S1,若当前值为2,先执行3次S1.CURRVAL,再执行3次S1.NEXTVAL,最后S1的值是()
A.3B.4C.5D.6
50.语句SELECT*FROMdeptWHERENOTEXISTS(SELECT*FROMempWHEREdeptno=dept.deptno)执行后的结果为()
A.只显示存在于EMP表中的部门全部信息。
B.只显示不存在于EMP表中的部门全部信息
C.未返回任何数据
D.显示DEPT表中的全部信息
51.视图可以用于()
A.限制对表中指定列的访问
B.限制对表中行的子集的访问
C.A和B都是
D.A和B都不是
52.当删除父表中的数据时,在CREATETABLE语句的外键定义中指定的()选项删除子表中的数据。
A.ONTRUNCATECASCADE
B.ONDELETECASCADE
C.ONUPDATECASCADE
D.A和C都是
53.下列哪个是组合主键的特征()
A.每列有唯一的值,但不是NULL值
B.组合有唯一的值,并且其中每列没有NULL值
C.组合的第一列和最后一列有唯一值
D.组合的第一列和最后一列有唯一值,但没有NULL值
54.下面哪一个语句可以使用子查询()
A.SELECT语句B.UPDATE语句
C.DELETE语句D.以上都是
55.哪一个是子查询执行的顺序()
A.最里面的查询到最外面的查询
B.最外面的查询到最里面的查询
C.简单查询到复杂查询
D.复杂查询到简单查询
56.若当前日期为’25-5月-06’,以下()表达式能计算出5个月后那一天所在月份的最后一天的日期。
A.NEXT_DAY(ADD_MONTHS(’28-5月-06’,5))
B.NEXT_DAY(MONTHS_BETWEEN(’28-5月-06’,5))
C.LAST_DAY(MONTHS_BETWEEN(’28-5月-06’,5))
D.LAST_DAY(ADD_MONTHS(’28-5月-06’,5))
57.以下运算结果不为空值的是()
A.12+NULL
B.60*NULL
C.NULL‖’NULL’
D.12/(60+NULL)
58.下面哪一个like命令会返回名字象HOTKA的行?
()
A.whereenamelike‘_HOT%'
B.whereenamelike‘H_T%'
C.whereenamelike‘%TKA_'
D.whereenamelike‘%TOK%'
59.下列哪个命令是用于ORACLE中数据导出的()
A.expB.impC.inputD.output
60.()子句用于列出唯一值。
A.uniqueB.distinctC.orderbyD.groupby
61、假定Emp表中共有14行记录,有三条记录Comm字段为NULL,则Selectcount(*)fromemp和Selectcount(Comm)fromemp分别返回。
A.14B.3C.11D.17E.20
62、在Oracle中,通过命令可以释放锁。
A.INSERTB.DELETEC.ROLLBACKD.UNLOCKE.COMMIT
二、SQL编写题
1.统计公司有多少个岗位(工种的个数)。
selectcount(distinctjob)fromemp;
2.检索出10部门和20部门的员工信息,显示字段:
empno、ename、deptno。
selectempno,ename,deptnofromempwheredeptno=10ordeptno=20;
3.检索公司员工中姓张的员工信息。
显示字段:
empno、ename、deptno。
selectempno,ename,deptnofromempwhereenamelike‘张%’;
4.检索部门编号、部门名称、部门所在地及其每个部门的员工总数。
selectd.deptno,d.dname,d.loc,count(*)fromempe,deptdwheree.deptno=d.deptnogroupbyd.deptno,d.dname,d.loc;
5.检索10部门中1980年2月份之前入职的员工信息。
显示:
empno、ename、deptno、hiredate。
select*fromempwheredeptno=10andhiredate 6.检索工资等级高于smith的员工信息。 select*fromempejoinsalgradeson(e.salbetweens.losalands.hisal)wheres.grade>(selectdistincts.gradefromempejoinsalgradeson((selectsalfromempwhereename='SMITH')betweens.losalands.hisal)); 7.按部门号(deptno)及工资(sal)排序检索公司的员工信息(要求部门号从小到大,部门号相同的按工资由高到低),显示的字段为: empno、ename、sal、deptno。 selectempno,ename,sal,deptnofromemporderbydeptnoasc,saldesc; 8.检索与SCOTT从事相同工作的员工信息。 select*fromempwherejob=(selectjobfromempwhereename='SCOTT'); 9.检索与30部门员工工资等级相同的员工姓名与工资。 select*fromempejoinsalgradeson(e.salbetweens.LOSALands.HISAL)wheres.grade=(selectdistincts.gradefromempejoinsalgradeson((selectavg(sal)fromempwheredeptno=30)betweens.LOSALands.HISAL)); 10.检索每位员工的年收入(基本计算方法为: (月工资sal+月奖金comm)*12),显示字段: 员工号、员工名、年收入(要求年收入有别名‘年收入’)。 selectempno,ename,((sal+nvl(comm.,0))*12)a
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- oracle 复习题