oracle练习题.docx
《oracle练习题.docx》由会员分享,可在线阅读,更多相关《oracle练习题.docx(13页珍藏版)》请在冰豆网上搜索。
![oracle练习题.docx](https://file1.bdocx.com/fileroot1/2023-2/2/b49ceec3-3db3-4f1f-81d6-c18cb479247e/b49ceec3-3db3-4f1f-81d6-c18cb479247e1.gif)
oracle练习题
ORACL复习题
一、填空题:
1、ORACLE数据库默认最高管理员账号是。
sys
2、ORACLE数据库系统由、组成。
逻辑结构、物理结构和实例
3、ORACLE数据库具有3种主要类型的文件,它们分别是:
、、
。
数据文件,控制文件,日志文件
4、ORACLE内存结构主要分为、。
系统全局区,程序全局区
5、ORACLE逻辑存储结构包括、、、。
块,区,段,表空间
6、在SQLSELECT语句查询中,要去掉查询结果中的重复记录,应该使用_________关键字。
Distinct
7、使用SQL语言的SELECT语句进行分组查询时,如果希望去掉不满足条件的分组,应当使用_________子句。
Having
8、连接到ORACLE数据库的方法有、。
SQL*PLUS、OEM
9、SCOTT用户的默认口令是:
。
tiger
10、SYS用户登录SQL*PLUS时,连接字符应该为。
数据库名ASsysdba
11、安装ORACLE时,(是/否)一定要进行数据库实例的安装。
否
12、要登录OEM,必须启动才行。
OracleDBConsoleORCL服务
13、OUI工具用来安装和ORACLE组件。
卸载
14、打开ORACLE安装目录下的install中的文件可以查看OEM、ISQL*PLUS的URL和端口号。
Portlist.ini
15、每个数据库至少有一个系统表空间,被称为表空间。
system
16、安装过程中进行了口令的设置,但是出现了口令有错的信息,是因为
原因。
口令设置不符合ORACLE的约定
17、EXP命令是用来进行文件的。
导出
18、数据库可以使用工具进行创建。
DBCA
19、登录ISQL*PLUS页面的默认端口号为。
5560
20、支持客户端应用程序到ORACLE数据库服务器网络会话的组件是。
ORACLENET
21.在SQL*PLUS中使用SQL*PLUS的命令可以显示表的结构信息。
22.所谓方案,就是一系列数据库对角的集合,是数据库中存储数据的一个逻辑表示。
每个用户都拥有自己的。
23.当表不存在外键、索引等时,要删除表中的全部记录,用命令。
24.是SYSDBA和SYSOPER特权用户。
25.要对表中的记录进行插入、删除、更新等操作,其中要使用命令才能操作成功。
26.登录SQLDEVELOPER软件时,主机名称要写。
27.在SQL*PLUS中可运用SQL*PLUS的命令完成用户连接。
28.在设计表时,对于邮政编码(固定为6位)列最好适合的数据类型为。
二、选择题
1、ORACLE管理数据库存储空间的最小数据单位是()。
A、数据块B、表空间
C、表D、区间
2、部分匹配查询中有关通配符“%”的正确的叙述是()。
A.“%”代表多个字符B.“%”可以代表零个或多个字符
C.“%”不能与“_”一同使用D.“%”代表一个字符
3、假设下表中属性emp_dept是employee表中的一个外码,其中department表是主表,ID为主码,employee表为从表。
请指出下面给出的各行中哪一行不能插入employee表。
()。
DEPARTMENT:
ID
NAME
LOCATION
10
Accounting
Newyork
40
Sales
miami
EMPLOYEE:
EMP_ID
EMP_NAME
EMP_MGR
TITLE
EMP_DEPT
1234
Green
President
40
4567
Gilmore
1234
SeniorVP
40
1045
Rose
4567
Director
10
9876
Smith
1045
Accountant
10
A、9213jones1045clerk30B、8997grace1234secretary40
C、5932allen4567clerknullD、3334kkl9867liker10
4、下面哪一个like命令会返回名字象HOTKA的行?
()。
A、whereenamelike‘_HOT%'B、whereenamelike‘H_T%'
C、whereenamelike‘%TKA_'D、whereenamelike‘%TOK%'
5、当数据库服务器上的一个数据库启动时,ORACLE将分配一块内存区间,叫做系统全局区,英文缩写为()。
A、VGAB、SGAC、PGAD、GLOBAL
6、常见的后台进程LGWR的作用()。
A、数据库写入程序B、归档C、进程监控D、日志写入程序
7、初始化参数DB_BLOCK_SIZE的作用是()。
A、非标准数据块数据缓冲区大小B、归档日志文件的默认文件存储格式
C、标准数据块大小D、后台进程跟踪文件生成的位置
8、在登录OracleEnterpriseManagerDatabaseControl时,下列那一项不属于连接身份()。
A、AdministratorB、NormalC、SYSDBAD、SYSOPER
9、回滚操作是()事务处理所做的工作
A、重复B、备份C、删除D、撤销
10、可以从下列那个表中查询本用户所拥有的表()。
A、USER_TABLESB、USER_VIEWSC、ALL_tablesD、ALL_views
11、oracle数据库显示提交的命令是()。
A、DO
B、COMMIT
C、ROLLBACK监控并行回滚的视图(MonitoringParallelRollback)
D、TRUNCATE截断表
12、ORACLE10G中G代表意思是()。
A、第几代数据库B、数据库的存储容量
C、数据库的安装所需的空间D、网格计算
13、安装ORACLE10g数据库使用的最小物理内存为()。
A、128MB、256MC、512MD、1GB
14、关闭ORACLE数据库的命令是()。
A、CLOSEB、EXITC、SHUTDOWND、STOP
15、用于修改表中数据的语句是()。
A、EDITB、MODIFYC、UPDATED、ALTER
16、SQLDEVELOPLER软件不可以用于()。
A、创建表B、创建存储过程C、录入表的数据D、创建数据库
17、如果要保证商品的数量在1-100,可以通过()约束来实现。
A、CHECKB、PRIMARYKEYC、UNIQUED、DEFAULT
18、在设计表时,对于邮政编码(固定为6位)列最好适合的数据类型为()。
A、CHARB、VARCHARC、VARCHAR2D、NVARCHAR
19、DELETE命令中用()语句或子句来表明表中所要删除的行。
A、UPDATEB、WHEREC、SELECTD、INSERT
20、登录SQLDEVELOPER软件时,主机名称要写()。
A、主机的名字B、数据库的名字
C、ADMINISTRATORD、SYS
21.Select语句的执行顺序是
select
from
where
groupby
having
orderby
A.123456B.234561C.234516D.124563
22.下面不属于ORACLE数据库状态的是。
A.OPENB.MOUNTC.CLOSED.READY
23.ORACLE数据库物理结构包括以下三种文件,以下不属于的是。
A.系统文件B.日志文件C.数据文件D.控制文件
24.数据库中有两个用户scott和muuser,物资表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;
三、判断题
1、数据块只能基于表或视图。
(X)
2、从一个表中删除元组时,delete和droptable命令可以起到同样的效果。
(X)
3、Delete可以有选择地删除记录,使用rollback语句可以取消这个命令的执行。
(T)
4、我们使用altertable命令的add选项向一个已存在的表中添加一个新的属性列时,新列的每一行最初的值均为null。
只有当一个表还没有行的时候,我们才可以对添加的列用notnull约束。
(T)
5、Oracle进程就是服务器进程(X)
6、oracle数据库系统中数据块的大小与操作系统有关(T)
7、PL/SQL中游标的数据是可以改变的(T)
8、一个数据文件中可以存在多个表,同样一个表也可以存在多个数据文件上。
(T)
9、使用having子句是为了限制groupby子句返回的行的个数。
(X)
10、oracle进程又分为两类:
用户进程和后台进程。
(X)
11、SYS和SYSTEM的权限是一样的。
(X)
12、OUI可以将ORACLE进行完全卸载。
(X)
13、SQL*PLUS和ISQL*PLUS是一回事。
(X)
14、ALTERUASERSCOTTidentifiedbyw1234这条命令是解锁。
(X)
15、SYSTEM用户既可以以DBA身份又可以以普通身份登录到数据库。
(X)
16、视图就是一张实际的表。
(X)
17、ORACLE中创建用户后,还应进行角色的设置和权限的分配。
(T)
18、SELECT语句中ORDERBY子句是用于分组的。
(X)
19、ORACLE的备份有冷备份热备份之分。
(T)
20、ORACLE中建表,一定要事先建立好表空间或使用默认表空间。
(T)
21.SQLDEVELOPLER软件可以用于创建为数据库。
()
22.使用SQL语言的SELECT语句进行分组查询时,如果希望去掉不满足条件的分组,应当使用where子句。
()
23.视图是一张虚拟的表,实际上并不存在。
()
24.定义同义词,当前用户必须拥有权根:
CREATESYSNONYM。
()
25.PRIMARYKEY是实体完整性的体现之一。
()
26.创建序列的目的是方便进行主键的设置。
()
27.ORACLE中设置用户的密码可以为1234。
()
28.在EM中对数据库进行数据库的打开与关闭、备份与还原等操作,设置主机身份证明是必须的。
四、问答题:
1、ORACLE中进行关闭/打开数据库、备份/恢复数据库等工作都需要进行主机首选身份认证,请简述主机首选身份认证的过程。
2、请简述EXCLE导入ORACLE数据的方法。
3、简述ORCALSQLDEVELOPER软件导入EXCEL表的方法。
4、简述ORACLE数据库启动和关闭数据库实例的方法。
5、简述登录ORACLE的方法。
6、简述创建stu数据库的过程。
(假设该数据库包含3张表,分别是student、score、grade)
五、计算题
设有一个顾客商品关系数据库,有三个基本表,表结构如下:
商品表:
Article(商品号,商品名,单价,库存量)
客户表:
Customer(顾客号,顾客名,性别,年龄,电话)
订单表:
OrderItem(顾客号,商品号,数量,购买价,日期)
注意:
回答时不允许改变程序结构和随意添加子查询。
1.请用SQL语言创建一个视图GM_VIEW,检索顾客的顾客号、顾客名和订购商品的商品名、金额和日期。
(金额等于数量*购买价)
CREATVIEWGM_VIEW(顾客号,顾客名,商品名,金额,日期)AS
SELECT__________‘顾客号’,‘顾客名’,‘商品名’,‘金额’=‘数量’*‘购买价’,‘日期’)
FROMArtcle,Customer,OrderItem
WHERE___________;Customer.顾客号=OrderItem.顾客号andOrderItem.商品号=Article.商品号
2.请用SQL语言找出女顾客购买的商品号、商品名和数量合计。
SELECT___________‘商品号’,‘商品名’,‘数量’
FROMOrderItem,Artcle,Customer
WHERE___________Customer.性别=女andCustomer.顾客号=OrderItem.顾客号andOrderItem.商品号=Article.商品号
GROUPBYOrderItem.商品号,商品名;
3、用SQL语言将(“00002”,“电视机”,“10000.00”,“100”)记录插入Article
___________________________________________________________________________
insertintoArticle(商品号,商品名,单价,库存量)
values(“00002”,“电视机”,“10000.00”,“100”)
4、用SQL语言将Article表中商品号为“00001”的商品的库存量更新为“200”
___________________________________________________________________________
updateArticle
Set‘库存量’=200
where‘商品号’=00001
5、用SQL语言从OrderItem中删除日期小于2009-5-15的记录、
___________________________________________________________________________delete
fromOrderItem
where‘日期’<2009-5-15
6、用SQL语言从Article表中查询单价最高的商品的信息。
___________________________________________________________________________
Select‘商品号’,‘商品名’,‘单价’,‘库存量’
FromArticle
WhereArticle.单价=max(Article.单价)
7.请用SQL语言ALTERTABEL命令给商品表Article增加一个字段,字段名为:
产地,数据类型为:
CHAR,长度为:
30,命令如下:
ALTERTABLE
ArticleADD(产地char(30));
8、用SQL语言建立如下表:
表名为:
职工表,字段名:
职工号字符型长度为30,姓名字
符型长度为2,出生日期日期型,工资数值型长度5
CreateTable职工表(职工号varchar2(30),姓名varchar2
(2),出生日期date,工资number(5));
六、综合题:
1、程序分析题
现有一个学生数据库,学生表student(sno,sname,sex,Dno),Dno为系别号;系表Dept(Dno,Dname),Dname为系名。
其中学生表包含了3条记录(032001,’刘一’,’男’,1)、(032002,’王丽’,’女’,1),(032003,’陈三’,’男’,1);系表包含3条记录(1,’计算机系’)(2,’数学系’)(3,’材料系’),读以下三段程序,按要求写出结果。
(1)ALTERTABLEStudentADDsbirthdate;
结果:
(2)SELECTSNAMEFROMStudentWHERESex=’女’ANDRowNUM<3;
结果:
(3)SELECTSname姓名,Sex性别,Dname系名FROMStudent,DeptWHEREsex=’女’ANDStudent.Dno=Dept.Dno;
结果:
(4)若student与Dept表产生了键约束,分别执行以下SQL语句:
① DELETEFROMDeptWHEREDname=’计算机系’;
问Student表中还有几条记录?
②DELETEFROMDeptWHEREDname=’数学系’;
问Student表中还有几条记录?
2、程序完成题
(1)现有ORACLE数据库服务器(“Myoracle”),现在以scott的身份用SQL*PLUS登录到数据库,请填写登录的连接字符串。
用户名:
scott
密码:
****
连接字符串:
(2)现有student(sno,sname,sex,sbirth)sbirth表示学生的出生日期,现在要查询学生的姓名和其年龄,显示的结果第一行要带标题:
姓名年龄。
请填写相关命令。
SQL>SELECT;
(3)操作完毕,从SQL*PLUS中退出。
请填写相关命令。
SQL>
七、上机设计题
现要为学校建立一个数据库,设学校环境如下:
一个系有若干个专业,每个专业一年只招一个班,每个班有若干个学生。
.现要建立关于学生、班级、系的数据库,关系模式为:
STUDENT (stu_id(学号),name(姓名),age(年龄),class_id(班号))
CLASS (class_id(班号),spe_name(专业名),dept_id(系号),stu_date(入学年份))
DEPARTMENT (dept_id(系号),dept_name(系名))
1、请用DBCA工具创建一个school数据库;
2、请用EM完成以下功能:
(1)建表(方案均为scott)
(2)添加一个sex(性别)字段
(3)为建的表进行约束设置
①每个表的主键和外键。
②学生的年龄介于15到40岁之间。
③学生姓名不能为空
④性别设置默认值为‘女’
3、用SQL语句插入如下数据(想办法快速实现记录的插入,可以考虑创建.sql文件)
CLASS(
101,软件,002,1995; 102,微电子,002,1996;
111,无机化学,003,1995; 112,高分子化学,003,1996;
121,统计数学,001,1995; )
STUDENT (
8101,张三,18,101; 8102,钱四,16,121;
8105,李飞,19,102; 8201,张飞,18,111;
8302,周瑜,16,112; 8203,王亮,17,111;
8305,李宝庆,19,102; 8409,李文龙,18,101; )
DEPARTMENT( 001, 数学; 002, 计算机; 003, 化学; )
4、完成以下查询功能
(1)找出所有姓王的学生,并按其年龄由大到小排序。
(2)列出学生人数大于等于2的班的编号。
5、 学生李文龙转到计算机系微电子班,请更新相关的表。