oracle习题练习
Oracle经典练习题及标准答案

Oracle经典练习题及标准答案oracle经典练习sql/*1、选择在部门30中员工的所有信息*/select * from scott.emp where deptno = '30'/*2、列出职位为(MANAGER)的员工的编号,姓名*/select empno, ename from scott.emp where job = 'MANAGER'/*3、找出奖金高于工资的员工*/select * from scott.emp where comm > sal/*4、找出每个员工奖金和工资的总和*/select ename, sal + nvl(comm, 0) from scott.emp/*5、找出部门10中的经理(MANAGER)和部门20中的普通员工(CLERK) */select *from scott.empwhere deptno = '10'and job = 'MANAGER'unionselect *from scott.empwhere job = 'CLERK'and deptno = '20'/*6、找出部门10中既不是经理也不是普通员工,而且工资大于等于2000的员工*/ select *from scott.empwhere job != 'MANAGER'and job != 'CLERK'and sal > 2000/*7、找出有奖金的员工的不同工作*/select distinct(job) from scott.emp where comm is not null /*8、找出没有奖金或者奖金低于500的员工*/select *from scott.empwhere comm is not nulland comm > 500/*9、显示雇员姓名,根据其服务年限,将最老的雇员排在最前面*/select enamefrom scott.emporder by (months_between(sysdate, hiredate) / 12) descselect ename,hiredate from scott.emp order by hiredate/*10、找出每个月倒数第三天受雇的员工*/select * from scott.emp where hiredate = last_day(hiredate) - 2/*11、分别用case和decode函数列出员工所在的部门,deptno=10显示'部门10',deptno=20显示'部门20'deptno=30显示'部门30'deptno=40显示'部门40'否则为'其他部门'*/select ename,case deptnowhen 10 then'部门10'when 20 then'部门20'when 30 then'部门30'when 40 then'部门40'else'其他部门'end 工资情况from scott.empselect ename,decode(deptno,10,'部门10',20,'部门20',30,'部门30',40,'部门40','其他部门') 工资情况from scott.emp/*12、分组统计各部门下工资>500的员工的平均工资*/select avg(sal) from scott.emp where sal > 500 group by deptno/*13、统计各部门下平均工资大于500的部门*/select deptno from scott.emp group by deptno having avg(sal) > 500 /*14、算出部门30中得到最多奖金的员工奖金*/ select max(comm) from scott.emp where deptno = 30/*15、算出部门30中得到最多奖金的员工姓名*/select enamefrom scott.empwhere deptno = 30and comm = (select max(comm) from scott.emp where deptno = 30) /*16、算出每个职位的员工数和最低工资*/select count(ename), min(sal), job from scott.emp group by job/*17、列出员工表中每个部门的员工数,和部门no */select count(ename), deptno from scott.emp group by deptno/*18、得到工资大于自己部门平均工资的员工信息*/select *from scott.emp ewhere sal > (select avg(sal) from scott.emp where e.deptno = deptno)select *from scott.emp e1,(select avg(sal) sals, deptno from scott.emp group by deptno) e2where sal > salsand e1.deptno = e2.deptno/*19、分组统计每个部门下,每种职位的平均奖金(也要算没奖金的人)和总工资(包括奖金) */select avg(nvl(comm,0)), sum(sal + nvl(comm, 0))from scott.empgroup by deptno,job/*20、笛卡尔集*/select * from scott.emp, scott.dept/*21、显示员工ID,名字,直属主管ID,名字*/select empno,ename,mgr,(select ename from scott.emp e1 where e1.empno = e2.mgr) 直属主管名字from scott.emp e2/*22、DEPT表按照部门跟EMP表左关联*/select *fromscott.dept, scott.empwherescott.dept.deptno = scott.emp.deptno(+)/*23、使用此语句重复的内容不再显示了*/select distinct (job) from scott.emp/*24、重复的内容依然显示*/select *from scott.empUNION ALLselect * from scott.emp/*23和24题和22题是一样的*//*25、只显示了两个表中彼此重复的记录。
oracle模拟习题

oracle模拟习题一、选择题1、关于SQL、SQL*Plus、PL/SQL相关于Oracle数据库的说法不正确的是(D )A.SQL是用来和Oracle交互的工具B.SQL*Plus是编写SQL和PL/SQL的工具C.PL/SQL是Oracle提供的过程化语言D.SQL*PLUS中不能含有SQL语句2、ORACLE中权限最大的用户是(C)A. systemB. adminC. sysD. scott3、select ename from emp where job=’SALESMAN’ order by empno desc 的第三条结果是(D )A. ALLENB. KINGC. SMITHD. WARD4、执行语句select gongda from emp的执行结果是(D)A. 显示gongdaB. 无输出C. 显示14行工大D. 报异常5、执行语句select * from emp where job=’clerk’,得到的结果是(B)A. 输出4行结果B. 无输出C. 输出14行结果D. 报异常6、PL/SQL中自定义异常编号正确的是(B)A. -01400B. -20222C. -01158D. -14337、PL/SQL中,若一条select语句没有返回值,将引发哪个异常(B)A.NO_ROWS_FOUND B.NO_DATA_FOUNDC.NO_DATA_ROWS _FOUND D.NO_FIND8、以下代码哪一行有问题(B)1 DECLARE2 v_i NUMBER := &n ;3 BEGIN4 IF v_i % 3 = 0 THEN5 dbms_output.put_line('您输入的数字是:'||v_i||'可以被3整除');6 ELSE7 dbms_output.put_line('您输入的数字是:'||v_i||'不能被3整除');8 END IF ;9 END;A. 第2行B. 第4行C. 第6行D. 哪一行都没错9、有一段PL/SQL程序如下所示:var1 := 10;LOOPEXIT WHEN var1 > 12;var1 := var1 +1;DBMS_OUTPUT.PUT_LINE(‘A’);END LOOP;输出的结果为(C )A.无输出B.AC.AAD.AAA10、以下程序执行后的结果是( B )DECLAREstr1 VARCHAR2(4000):='abcdefg_hijklmn'; --g和h之间的下划线代表此处有一个空格 str2 VARCHAR2(4000);str3 VARCHAR2(4000);BEGINselect upper(str1) into str2 from dual;select LENGTH(str1) into str3 from dual;dbms_output.put_line(str2||', '||str3);END;A.无输出 B.ABCDEFG HIJKLMN, 15C.ABCDEFG HIJKLMN, 14 D.abcdefg hijklmn,1511、ORACLE中权限最大的用户是(C)A. systemB. adminC. sysD. scott12、oracle 11g默认的日期格式是(A)A. 25-12月-2013B. 2013-12-25C. 12-25-2013D. 25-12-201313、执行语句SELECT comm FROM EMP 的执行结果有数字显示的是( A )A. 4行B. 无输出C. 14行D. 报错14、如何获得系统当前时间(C)A.sysdate B.select sysdateC.select sysdate from dual D.以上都是15、执行语句select * from emp where job=’clerk’,得到的结果是(B)A. 输出4行结果B. 无输出C. 输出14行结果D. 报错16、emp中,deptno是该表的( B )A. 主键B. 外键C. 什么都不是D. 主键+外键17、PL/SQL中自定义异常编号正确的是(B)A. -01400B. -20123C. -01158D. -143318、PL/SQL中,若一条select语句没有返回值,将引发哪个异常(B)A.NO_ROWS_FOUND B.NO_DATA_FOUNDC.NO_DATA_ROWS _FOUND D.NO_FIND19、有一段PL/SQL程序如下所示:var1 := 10;LOOPEXIT WHEN var1 > 12;var1 := var1 +1;DBMS_OUTPUT.PUT_LINE(‘A’);END LOOP;输出的结果为(C )A.无输出B.AC.AAD.AAA20、在Oracle PL/SQL程序中,要从用户输入赋值给数字变量stuid,下面代码正确的是(C)A.stuid = ‘& stuid ’B.stuid := “& stuid ”C.stuid : = & stuidD.stuid = & stuid二、简答题1、查询出名字中第三个字母是“N”的员工信息select * from emp where ename like ‘__N%’2、查询所有员工工号、姓名、工资、所在部门名称、所在地,按工资降序排列select emp.empno,emp.ename,emp.sal,dept.dname,dept.loc from emp,deptwhere emp.deptno=dept.deptno order by emp.sal3、查询每个部门的员工数量以及该部门名称,将员工数大于4人的部门筛选出来select dname,count(*) from scott.emp,scott.deptWHERE scott.emp.deptno=scott.dept.deptnogroup by dname HAVING count(*)>44、查询出没有员工的部门信息(部门编号、名称、所在地)SELECT * FROM dept WHERE deptno NOT IN (SELECT deptno FROM emp)5、查询出工资总数最少部门的部门信息(部门编号、名称、所在地)select * FROM (select dept.deptno,dept.dname,dept.loc,sum(sal)from emp,deptWHERE emp.deptno=dept.deptnogroup bydept.deptno,dept.dname,dept.locorder by sum(sal)) where rownum<26、将所有芝加哥工作的人工资加500,奖金加100UPDATE emp SET sal=sal+500 , comm=nvl(comm,0)+100WHERE emp.deptno=(SELECT deptno FROM dept WHERE loc='CHICAGO' )7、查询所有员工工号、姓名、工资select emp.empno,emp.ename,emp.sal from emp8、查询出每个员工姓名、工资,并按工资降序排列select ename,sal from emp order by sal desc9、查询出每个员工的姓名以及部门所在地select emp.ename,dept.dname FROM emp,dept where emp.deptno=dept.deptno10、查询出工资总数最少部门的部门信息(部门编号、名称、所在地)select * FROM (select dept.deptno,dept.dname,dept.loc,sum(sal)from emp,deptWHERE emp.deptno=dept.deptnogroup bydept.deptno,dept.dname,dept.locorder by sum(sal)) where rownum<211、将所有在纽约工作的人工资加500,奖金加100UPDATE emp SET sal=sal+500 , comm=nvl(comm,0)+100WHERE emp.deptno=(SELECT deptno FROM dept WHERE loc='NEW YORK' )12、删除工资最高的两个员工信息delete from scott.emp where sal in(SELECT sal FROM (SELECT * FROM scott.emp ORDER BY sal desc) WHERE ROWNUM < 3 )三、编程题1、自定义输入任意员工编号,输出该员工编号、姓名、工资、部门名称、所在地,如果输入的编号错误,请进行异常处理。
Oracle数据库试题100题(附答案)

Oracle数据库试题100题(附答案)1.当Oracle服务器启动时,下列哪种文件不是必须的(D)。
A.数据文件B.控制文件C.日志文件D.归档日志文件2.在Oracle中,当用户要执行SELECT语句时,下列哪个进程从磁盘获得用户需要的数据(B)。
A.用户进程B.服务器进程C.日志写入进程(LGWRD.检查点进程(CKPT)3.在Oracle中,一个用户拥有的所有数据库对象统称为(B)。
A.数据库B.模式C.表空间D.实例4.在Oracle中,有一个教师表teacher的结构如下:ID NUMBER(5)NAME V ARCHAR2(25)EMAIL VARCHAR2(50)下面哪个语句显示没有Email地址的教师姓名(C)。
A.SELECT name FROM teacher WHERE email = NULL;B.SELECT name FROM teacher WHERE email NULL;C.SELECT name FROM teacher WHERE email IS NULL;D.SELECT name FROM teacher WHERE email IS NOT NULL;5.在Oracle数据库的逻辑结构中有以下组件:A 表空间B 数据块C 区D 段这些组件从大到小依次是(B)。
A.A→B→C→DB.A→D→C→BC.A→C→B→DD.D→A→C→B6.在Windows操作系统中,Oracle的(A)服务监听并接受来自客户端应用程序的连接请求。
A.OracleHOME_NAMETNSListenerB.OracleServiceSIDC.OracleHOME_NAMEAgentD.OracleHOME_NAMEHTTPServer7.在Oracle 中创建用户时,若未提及DEFAULT TABLESPACE关键字,则Oracle 就将(B)表空间分配给用户作为默认表空间。
Oracle基础练习题及答案(多表查询1)(共5篇)

Oracle基础练习题及答案(多表查询1)(共5篇)第一篇:Oracle基础练习题及答案(多表查询1)利用scott用户自带的四张表完成如下作业:1.列出至少有一个员工的所有部门select b.deptno,b.dname from emp a,dept b where a.deptno=b.deptno group by b.deptno,b.dname having count(*)>=1;2.列出薪金比SMITH高的所有员工select * from emp where sal>(select sal from emp where ename='SMITH');3.列出所有员工的姓名及其直接上级领导的姓名select a.ename,b.ename “leader” from emp a,emp b wherea.mgr=b.empno;4.列出受雇日期早于其直接上级的所有员工的编号,姓名,部门名称select a.empno,a.ename,a.hiredate,c.dname from emp a,emp b,dept c where a.mgr=b.empno and a.deptno=c.deptno anda.hiredate5.列出部门名称和这些部门的员工信息,同时列出那些没有员工的部门select b.dname,a.* from emp a,dept b wherea.deptno(+)=b.deptno;6.列出所有CLERK(办事员)的姓名,及其部门名称,部门人数select aa.ename,aa.job,bb.dname,(select count(a.deptno)from emp a,dept b where a.deptno=b.deptno and b.dname=bb.dname group by a.deptno)from emp aa,dept bb where aa.deptno(+)=bb.deptno and aa.job='CLERK';7.列出最低薪金大于1500的各种工作及从事此工作的全部雇员人数select a.job,min(sal),count(ename)from emp a,dept b wherea.deptno=b.deptno having min(sal)>1500 group by a.job;8.列出在部门SALES(销售部)工作的员工的姓名,假定不知道销售部的部门编号。
oracle练习题(打印版)

oracle练习题(打印版)### Oracle数据库练习题#### 一、选择题1. Oracle数据库中,哪个命令用于创建表?- A. CREATE TABLE- B. CREATE DATABASE- C. DROP TABLE- D. ALTER TABLE2. 以下哪个不是Oracle数据库的数据类型?- A. NUMBER- B. CHAR- C. DATE- D. IMAGE3. 在Oracle数据库中,哪个命令用于删除表?- A. DELETE FROM- B. DROP TABLE- C. REMOVE TABLE- D. ERASE TABLE4. Oracle数据库中,如何查看当前用户?- A. SELECT USER FROM DUAL;- B. SELECT CURRENT_USER FROM DUAL;- C. SELECT USERNAME FROM ALL_USERS;- D. SELECT CURRENT_USER FROM ALL_USERS;5. 以下哪个命令用于在Oracle数据库中创建索引?- A. CREATE INDEX- B. CREATE KEY- C. CREATE CONSTRAINT- D. CREATE UNIQUE#### 二、填空题1. 在Oracle数据库中,使用____命令可以查看表结构。
2. Oracle数据库中,使用____命令可以查看当前数据库的所有表。
3. 要删除Oracle数据库中的行,可以使用____命令。
4. Oracle数据库中,____用于存储二进制数据。
5. Oracle数据库中,____命令用于查看数据库中所有的索引。
#### 三、简答题1. 描述Oracle数据库中事务的ACID属性。
2. 解释Oracle数据库中的锁定机制。
3. 说明Oracle数据库中视图的作用。
#### 四、操作题1. 创建一个名为`Employees`的表,包含以下字段:- `EmployeeID` NUMBER(10) PRIMARY KEY,- `FirstName` VARCHAR2(50),- `LastName` VARCHAR2(50),- `HireDate` DATE,- `Salary` NUMBER(10, 2),- `DepartmentID` NUMBER(10).2. 向`Employees`表中插入以下数据:- `EmployeeID`: 1001, `FirstName`: 'John', `LastName`:'Doe', `HireDate`: '2023-01-01', `Salary`: 70000,`DepartmentID`: 101.- `EmployeeID`: 1002, `FirstName`: 'Jane', `LastName`:'Smith', `HireDate`: '2023-02-15', `Salary`: 50000,`DepartmentID`: 102.3. 编写一个查询,显示所有员工的姓名和工资,按工资从高到低排序。
oracle练习题

1、编写一个PL/SQL程序块,对名字以“A”或“S”开头的所有雇员按他们基本薪水的10%给他们加薪。
2、编写一个PL/SQL程序块,对所有的销售员增加佣金500。
3、编写一个PL/SQL程序块以提升两个资格最老的“职员”为“高级职员”。
(提示:工作时间越长,资
格越老)
4、编写一个PL/SQL程序块,对所有雇员按他们基本薪水的10%给他们加薪。
如果加薪后的薪水大于5000,
则取消加薪。
5、编写一个PL/SQL程序块以接受用户输入的三个数值并显示其中的最大值。
6、编写一个PL/SQL程序块以显示指定名称的雇员所在的部门名称和部门位置。
7、编写一个给指定雇员加薪10%的PL/SQL程序块,之后,检查如果已经雇佣该雇员超过60个月,则给
他额外加薪3000。
8、编写一个PL/SQL程序块以检查指定雇员的薪水是否在有效范围内。
不同职位的薪水范围为
Designation Range
Clerk 1500~2500
Salesman 2501~3500
Analyst 3501~4500
Others 4501 and above
如果薪水在此范围内,则显示消息“Salary is OK!”,否则,更新薪水为该范围内的最小值。
9、编写一个PL/SQL程序块以显示某个雇员在此组织中的工作天数。
《oracle数据库》练习题4

练习题41、 选择题(每题1分,共20分)1. 有数据”oracle”分别存放到char(10)和varchar2(10)类型的字段中,其实际存储长度为( )A、 10 10B、66C、 10 6D、 6 102.ORACLE数据库物理结构包括以下三种文件,以下不属于的是( )A、系统文件B、日志文件C、数据文件D、控制文件3.下面四个语句中哪一个是正确的?( )A、 SELECT * , ENAME FROM EMP;B、 DELETE * FROM EMP;C、 SELECT DISTINCT EMPNO ,HIREDATE FROM EMP;D、 SELECT ENAME|SAL AS “name” FROM EMP ;4.更改oracle用户HR,使其变为不可用(锁定)状态( )A、 UPDATE USER HR ACCOUNT DISABLE ;B、 UPDATE USER HR ACCOUNT LOCK ;C、 ALTER USER HR ACCOUNT LOCK ;D、 ALTER USER HR ACCOUNT DISABLE ;5.在Oracle中,使用下列的语句:CREATE PUBLIC SYNONYM parts FOR Scott.inventory; 完成的任务是( )。
A、 需要给出schema被除去的对象名B、 指定了新的对象权限C、 指定了新的系统权限D、给Scott.inventory对象创建一个公用同义词parts6. ORACLE中,用来判断列值是否为空的操作符是( )A、 ==NULLB、IS NULLC、 AS NULLD、 NULLIS7.在CUSTOMER中有一列为单价(PRICE),写一个SELECT命令显示所有单价在500以上的查询语句( )A、SELECT * FROM CUSTOMER WHERE PRICE MORE THAN 500;B、SELECT * FROM CUSTOMER WHERE PRICE BETWEEN 500 AND *;C、SELECT * FROM CUSTOMER WHERE PRICE LIKE '%500%';D、SELECT * FROM CUSTOMER WHERE PRICE>=500;8. 下列哪个命令是用于ORACLE中数据导出的 ( )A、expB、impC、inputD、output9.以下运算结果不为空值的是()A、12+NULLB、60*NULLC、NULL‖’NULL’D、12/(60+NULL)10.若用户要连接数据库,则该用户必须拥有的权限是()A、create tableB、create indexC、create sessionD、connect11.授予删除任何表的系统权限(DROP ANY TABLE)给user1,并使其能继续授该权限给其他用户,以下正确的SQL语句是()A、Grant drop any table to user1;B、Grant drop any table to user1 with admin option;C、Grant drop table to user1;D、Grant drop any table to user1 with check potion;12.要以自身的模式创建私有同义词,用户必须拥有( )系统权限。
Oracle测试题(卷)+答案解析

Oracle测试题(卷)+答案解析1) PL/SQL块中可以使用下列()命令。
(选择两项)a) TRUNCATEb) DELETEc) SA VEPOINTd) ALTER TABLE2) 授予sa用户在SCOTT.EMP表中SAL列的更新权限的语句是(B)〔选择一项〕a) GRANT CHANGE ON SCOTT.EMP TO SAb) GRANT UPDA TE ON SCOTT.EMP(SAL) TO SAc) GRANT UPDA TE (SAL) ON SCOTT.EMP TO SAd) GRANT MODIFY ON SCOTT.EMP(SAL) TO SA3) EMP表有14条记录,则语句SELECT ‘Aptech’FROM EMP 的执行结果是(C)〔选择一项〕a) Aptechb) 无输出c) 14行Aptechd) 编译出错4) PL/SQL块中哪几部分是可选的()〔选择二项〕a) Declareb) Beginc) Exceptiond) Constant5) 在创建序列的过程中,下列()选项指定序列在达到最大值或最小值后,将继续从头开始生成值。
(选择一项)a) Cycleb) Nocyclec) Cached) Nocache6) 同义词有以下()用途。
(选择三项)a) 简化SQL 语句b) 隐藏对象的名称和所有者c) 提供对对象的公共访问d) 显示对象的名称和所有者7) Oracle中用来释放锁的语句有()〔选择二项〕a) commitb) Drop lockc) rollbackd) unlock8) 关于类型定义Number(9,2)说确的有()〔选择一项〕a) 整数部分9位,小数部分2位,共11位b) 整数部分7位,小数部分2位,共9位c) 整数部分6位,小数点一位,小数部分2位,共9位d) 以上说法均不正确9) 下列哪种Lob类型用来存储数据库以外的操作系统文件()〔选择一项〕a) CLOBb) BLOBc) CFILEd) BFILE10) Oracle中的三种系统文件分别是()〔选择三项〕a) 数据文件b) 归档文件c) 日志文件d) 控制文件11) 下列哪项不是Oracle中常用的分区方法?()〔选择一项〕a) 围分区b) 散列分区c) 列表分区d) 条件分区12) 查看Test中名称为P1的分区中的记录的查询语句为()〔选择一项〕a) Select * from Test Where PartitionName=’p1’b) Select * from Test(p1)c) Select * from Test Partition(p1);d) 以上均正确13) 创建序列时,若未指定Cycle选项,则当当前值大于MaxValue时将()〔选择一项〕a) 从MinValue重新开始循环b) 重复使用MaxValue 值c) 执行出错d) 使用随机值14) 下列哪项是创建索引组织表所必需的()〔选一项〕a) Primary Keyb) Order Byc) Group Byd) 以上均不是15) 若表的某字段值存在大量的重复,则基于该字段适合创建哪种索引?()〔选一项〕a) 标准索引b) 唯一索引c) 位图索引d) 分区索引16) 在PL/SQL块中定义一个名为PI值为3.14的Real型常量的语法是()〔选一项〕a) A.Pi Const Real=3.14;b) B.Pi Real Const =3.14;c) C.Constant Pi Real:=3.14d) D.Pi Constant Real:=3.1417) 22.当Select语句没有返回行时,将引发下列哪个异常?()[选择一项]a) A.No_rows_foundb) B.No_data_foundc) C.No_Data_rows_foundd) D.Invalid_Number18) Oracle中提供的两种游标是()〔选择二项〕a) A.隐式游标b) B.静态游标c) C.REF游标d) D.显式游标19) 若Emp表中有14条记录,则用户执行了以下操作,结果是:()〔选择一项〕Cursor mycur is Select * From emp;。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
习题1安装和运行Oracle数据库一、填空题1.数据库管理系统采用的数据模型主要有:(网状模型)、(层次模型)和(关系模型)。
2.(交换方式)是指数据库使用者利用数据库管理系统提供的软件工具,直接对数据库进行操作,操作结果立即返回到操作界面。
3.(数据库)是存储在计算机内,按一定数据模型组织的、可共享的数据集合。
4.通常,把每一个类数据对象的个体称为(实体)。
5.对于每一个实体集,可指定一个码为(主码)。
6.Oracle是(面向对象的关系型)数据库管理系统。
7.Oracle系统主要是由(oracle database)和(oracle application)两大产品及Oracle管理程序包等其他产品组成的。
8.从Oracle DataBase 10g开始,通过设置初始化参数(SHAED_SERVERS)可以自动激活共享服务器特征。
9.(Oracle数据库10g企业版)是为关键任务的应用程序(如大业务的在线事务处理(OLTP)环境、查询密集的数据仓库和要求苛刻的因特网应用程序)提供了高效、可靠、安全的数据管理的Oracle DataBase 10g版本。
10.Oracle 10g提供了(Automatic Storage Management ),从而在不需要第三方面产品的情况下实现冗余性和数据分离。
二、选择题1.两个实体集A和B之间的联系不可能是以下(D)种情况。
A.1:1B.1 : nC.m : nD.以上答案都不对2.绘制E-R图时,当一个属性或属性组合指定为主码时,在实体集与属性的连接线上标记( D)。
A.矩形框B.带圆角矩形框C.线段D.斜线3.绘制E-R图时,实体用(A )表示。
A.矩形框B.带圆角矩形C.线段D.斜线4.(C)语言是过程化SQL的缩写。
A.SQLB.Tran-SOLC.PL/SQLD.以上答案都对5.( A )的目的在于为数据表提供合格的数据。
A.数据准备B.数据备份C.数据恢复D.以上答案都对6.Oracle DataBase 10g版本中不包含(C)。
A. Oracle 数据库个人版B. Oracle 数据库标准版C. Oracle 数据库开发版D. Oracle 数据库企业版7.从Oracle 10g开始,允许DBA使用ALTER TABLESPACE RENAME 命令修改表空间的名称,从而解决了早期版本表空间名不能被修改的问题。
需要注意(AB)表空间的名称不能修改。
(本题多选)A.SystemB.SysAuxC.TempD.以上答案都不对8.Oracle 10g中的“g”代表( B )。
A.网络B.网格C.节点D.站点9.Oracle是(C)数据库管理系统。
A.关系型B.面向对象C.面向对象关系型D. 以上答案都不对10.安装Oracle服务器软件,不会采用的工具是( C )。
A、Oracle Universal InstallerB、Oracle Database Configuration AssistantC、Oracle Enterprise Managerment ConsoleD、Oracle Net Confirguration Assistant11.以下被称为实例服务的是( D )。
A、OracleOra92homeTNSListenerB、OracleOra92homeHTTPServerC、OracleOra92homeAgentD、OracleServicedb0112.Oracle数据库文件默认的安装位置是(C )。
A、admin 目录下B、oradata目录下C、bin 目录下D、database 目录下13.在数据库服务器的安装过程中,不是默认创建的账户是( C )。
A、SYSB、DBAC、SYSTEMD、SCOTT14.(AB)直接影响着Oracle的速度,为此建议配置越高越好。
(本题多选)A.CPU的速度B.内存容量C.硬盘速度D. 以上答案都不对习题2管理工具和网络配置一、填空题1.(SYS)是SYSDBA特权用户和SYSOPER特权用户。
2.“System”用户是(DBA用户),其可以完成对数据库内数据对象的操作。
3.在使用浏览器运行iSQL*Plus的操作中,输入的URL地址格式为http://hostname:port/ISQLPLUS,其中的hostname指(oracle server所在主机名),port指(OEM控制工具监听器)。
4.“OracleOraDb10g_home1TNSListener”服务项是指(服务监听器)。
5.启动“OracleDBConsole”服务项的命令是(emctl start)。
二、.选择题1.命令行方式的管理工具是( A )。
A.SQL*plusB.Oracle 企业管理控制台C.iSQL*PlusD.SQL*Plus 工作表2.要对Oracle数据库进行管理,可以采用的工具是(C)。
A.Oracle Universal InstallerB.Oracle Database Configuration AssistantC.Oracle Enterprise Managerment Console Manager3.为了通过网络连接数据库,需要在客户端建立(C)。
A.监听程序进程B.实例服务C.网络连接服务台D.HTTP服务4.保护监听程序配置信息的位置和名称是( C )。
A.客户端,listener.oraB.客户端,tnsnames,oraC.服务器端, listener.oraD.服务器端,tnsnames,ora5.DBA是指(C)A.系统管理员 B.数据库操作员C.数据库管理员 D.以上说法都不对6.自定义一个用户时,如果选择项全部为默认状态,则该用户建立后为(D)A.SYSDBA B.DBA C.SYSOPER D.以上说法都不对7.OEM是一个借助于(B)的控制工具。
A.Windows窗口 B.浏览器窗口C.Windows窗口与浏览器窗口D.以上说法都不对(4)SQL*Plus可以用(AB)方式打开。
(本题多选)A.命令行B.Windows窗口C.浏览器窗口D.以上说法都不对8.关于DBCA的说法中,正确的是(ABCD )。
(本题多选)A.可以用于创建数据库B.可以用于删除数据库C.可以应用于管理数据库模版D.可以用于修改数据库配置习题3一、填空题1.(实例)是一组Oracle后台进程/线程以及一个共享内存区,这些内存有同一个计算机上运行的线程/进程所共享。
2.(数据库)物理操作系统文件和磁盘(disk)的集合。
3.在用户连接使用数据库之前,必须首先(启动)数据库。
4.(表空间)是Oracle数据库内部最高层次的逻辑存储结构。
5.修改表空间时,使用命令格式的关键字是(ALTER TABLESPACE)。
二、.选择题1.下列组件不是Oracle实例的组成部分的是(C)。
A.系统全局区B.pmon后台进程C.控制文件D.调度程序2.系统全局区中的缓冲区以循环方式写入的是(D)。
A.数据缓冲区B.重做日志缓冲区C.大池D.共享池3.下面内存区域中用来缓存数据字典信息的是(D)。
A.数据库高速缓存B.程序全局区C.重做日志缓存D.共享池4.如果一个服务进程中止,下列进程可以用来释放它所占有的资源的是(D)。
A. DBWNB.LGWRC.SMOND.PMON5.下列后台进程中,不是Oracle实例必须启动的是(C)。
A. DBWNB.LGWRC.SMOND.ARCN6.如果一个数据缓冲区被为脏缓冲区,正确的说法是(C)。
A.该缓冲区的数据与数据文件不一致B.该缓冲区的数据与数据文件一致C.该缓冲区的数据正在被使用D.该缓冲区的数据包含有错误7.表空间和数据文件的关系是(B)。
A.一个表空间只能对应一个数据文件B.一个表空间可对应多个数据文件C.一个数据文件可对应多个表空间D.数据文件和表空间可以交叉对应8.存储数据的逻辑单位,按大小依次为(D)。
A.表空间、数据块、区和段B.区、表空间、数据块和段C.段、区、表空间和数据块D.表空间、段、区和数据块9.以下初始化参数可以决定数据高速缓冲区的大小的是(D)。
A.LOG_BUFFERRGE_POOL_SIZEC.DB_CACHE_SIZED.SHARED_POOL_SIZE10.以下情况会纪起检查点的是(D)。
A.SCN的值会发生变化B.切换日志C.脏缓冲区个数达到指定阈值D.执行COMMIT命令11.有关段的说法,错误的是(C)。
A.段有多种类型,用于存储不同的数据B.段的大小在创建时决定,不能改变C.段由多个区组成,区可以连续,也可以不连续D.用来存储回滚数据,要专门创建回滚段12.下面对LGWR进程的描述正确的是(D)。
精选文库A.负责对实例进行恢复 B.进程失败后进行清理C.记录数据库的变化,以便进行数据恢复D.将脏缓冲区写入数据文件13.下列视图可用来查询控制文件信息的是(A)。
A.V$CONTROLFILESB.V$DATABASEC.V$CONTROLFILED.V$CONTROL14.下列情况下,LGWR进程写重做日志缓冲区到重做日志文件的是(D)。
A.每3秒B.当日志缓冲区的已满时C.执行COMMIT语句时D.以上选项都正确15.下面数据库文件用来记录应用程序对数据库进行改变的是(C)。
A.数据文件B.控制文件C.重做日志文件D.参数文件16.下面内存区域使用LRU机制进行管理的是(C)。
A.java池B.重做日志缓冲区C.数据库高速缓冲区D.大池17.下面后台进程可实现对重做日志文件的归档的是(D)。
A.PMONB.CKPTC.LCKnD.ARCn18.属于段的类型是(D)。
(本题多选)A.表段B.分区段C.簇段D.以上说法都不对19.创建数据库时命令格式的关键字是(A)。
A.CREATE DATABASE B.ALTER DATABASEC.CREATE TABLESPACED.ALTER TABLESPACE20.增加数据文件的关键字是(B)。
A.ALTERB.ADDC.DROPD.INCLUDING21.属于表空间的是(ABD)。
(本题多选)A.永久表空间B.临时表空间C.撤销表空间D.大文件表空间22.下列说法中,错误的是(B)。
A.表段用于存储表的所有数据,其名称与表名相同B.UNDO段用于存放事物所修改数据的旧值C.临时段用于存放更新操作所产生的临时数据D.LOB段用于存储LOB列的数据23.要创建新的Oracle数据库,可以采用的工具是( B )。
A.Oracle Universal InstallerB.Oracle Datebase Configuration AssistantC.Oracle Enterprise Management Console Manager习题4一、填空题1.(主键约束 )用于对实体完整性进行约束。