Oracle第二章习题及答案

合集下载

Oracle基础练习题及答案(多表查询2)

Oracle基础练习题及答案(多表查询2)

多表查询1.显示所有员工的姓名ename,部门号deptno和部门名称dname。

select ename,a.deptno,dname from emp a,dept b where a.deptno=b.deptno;2.查询20号部门员工的job和20号部门的locselect ename,job,loc from emp a,dept b where a.deptno=b.deptno and a.deptno=20;3.选择所有有奖金comm的员工的ename , dname , locselect ename,dname,loc from emp a,dept b where a.deptno=b.deptno and comm is not null;4.选择在DALLAS工作的员工的ename , job , deptno, dnameselect ename,job,a.deptno,dname from emp a,dept b where a.deptno=b.deptno and loc='DALLAS';5.选择所有员工的姓名ename,员工号deptno,以及他的管理者mgr的姓名ename和员工号deptno,结果类似于下面的格式employees Emp# manager Mgr#SMITH 7369 FORD 7902select a.ename "employees",a.empno "Emp#",b.ename "manager",b.empno "Mgr#" from emp a,emp b where a.mgr=b.empno;6. 查询各部门员工姓名和他们所在位置,结果类似于下面的格式Deptno Ename Loc20 SMITH DALLASselect a.deptno "Deptno",ename "Ename",loc "Loc" from emp a,dept b where a.deptno=b.deptno;。

oracle练习题及答案

oracle练习题及答案

oracle练习题及答案Oracle练习题及答案Oracle是一种强大的关系数据库管理系统,被广泛应用于企业级应用程序和数据管理中。

为了帮助大家更好地掌握Oracle数据库的知识,以下是一些Oracle练习题及答案,希望能够帮助大家更好地理解和掌握Oracle数据库的知识。

1. 什么是Oracle数据库?Oracle数据库是一种关系数据库管理系统,由美国Oracle公司开发。

它是一种高性能、可靠性高的数据库系统,被广泛应用于企业级应用程序和数据管理中。

2. Oracle数据库的特点有哪些?Oracle数据库具有以下特点:高性能、高可用性、可伸缩性、安全性高、灵活性强、易管理等。

3. 如何创建一个新的数据库用户?在Oracle数据库中,可以使用以下SQL语句来创建一个新的数据库用户:```CREATE USER username IDENTIFIED BY password;```4. 如何查看Oracle数据库中所有的表?可以使用以下SQL语句来查看Oracle数据库中所有的表:```SELECT table_name FROM user_tables;```5. 如何在Oracle数据库中插入一条新的记录?可以使用以下SQL语句来在Oracle数据库中插入一条新的记录:```INSERT INTO table_name (column1, column2, column3, ...) VALUES (value1, value2, value3, ...);```6. 如何在Oracle数据库中更新一条记录?可以使用以下SQL语句来在Oracle数据库中更新一条记录:```UPDATE table_name SET column1 = value1, column2 = value2, ... WHERE condition;```7. 如何在Oracle数据库中删除一条记录?可以使用以下SQL语句来在Oracle数据库中删除一条记录:```DELETE FROM table_name WHERE condition;```通过以上Oracle练习题及答案的学习,相信大家对Oracle数据库有了更深入的了解。

ORACLE第1-4章 习题参考答案

ORACLE第1-4章 习题参考答案

第1章案例数据库设计【简答题】1.简要说明数据库设计的基本流程,并结合实例说明数据库设计各阶段的主要任务。

数据库设计的基本流程:按照规范的设计方法,将数据库设计分为六个阶段:(1)需求分析;(2)概念结构设计;(3)逻辑结构设计;(4)物理结构设计;(5)数据库实施;(6)数据库的运行和维护。

需要说明的是,数据库设计还包含了应用系统的设计过程。

每个阶段的主要任务是:(1)需求分析:通过详细调查现实世界要处理的对象(组织、部门、企业等),充分了解原系统(手工系统或计算机系统)的工作概况,明确用户需求,确定新系统的功能。

(2)概念结构设计:应用E-R模型真实地反映现实世界,包括事物和相互之间的联系,能满足用户对数据的处理要求,是现实世界的一个真实模型;易于理解、易于更改、易于向关系、网状、层次等各种数据模型转换。

概念结构设计有以下四种方法:①自顶向下;②自底向上;③逐步扩张;④混合策略。

(3)逻辑结构设计:逻辑结构设计的目的是把概念设计阶段的基本E—R图转换成与选用的具体机器上DBMS所支持的数据模型相符合的逻辑结构(包括数据库模式和外模式)。

逻辑结构设计有如下三个步骤:①将概念模型(E—R图)转换为一般的关系、网状、层次模型;②将关系、网状、层次模型向特定的DBMS支持下的数据模型转换;③对数据模型进行优化。

(4)物理结构设计:对于一个给定的逻辑数据模式选取一个最适合应用环境的物理结构的过程,称为数据库的物理设计。

(5)数据库实施:建立实际数据库结构;试运行;装入数据;同时进行数据库的重新组织设计;故障恢复方案设计;安全性考虑;事务控制;(6)数据库的运行和维护:数据库的日常维护(安全性、完整性控制,数据库的转储和恢复);性能的监督、分析与改进;扩充新功能;修改错误。

2.依据你对数据库管理员和程序员职业岗位的了解,说明这两个岗位对数据库知识和能力的需求。

要求学生通过前程无忧()等人才招聘网站进行了解。

《Oracle数据库应用与实践》课后习题参考答案

《Oracle数据库应用与实践》课后习题参考答案

第 5 章 Oracle 模式对象
一、填空题
1. 字段级约束 表约束
2. NOT NULL 约束 UNIQUE 约束 PRIMARY KEY 约束

3. CREATE TABLE
CREATE ANY TABLE
4. UNIQUE PRIMARY KEY CHECK
5. 合并索引 重建索引
6. user_updatable_columns
一、 填空题 1. 数据挖掘 隐含的 未知的 2. API-ODM Java API ODM DBMS_DM PL/SQL API
3. Clustering Association Feature Extraction
Oracle 数据库应用与实践
2、某 cc 表数据如下: c1 c2 -------------1西 1安 1的 2天 2气
Oracle 数据库应用与实践
3好 …… 转换为 1 西安的 2 天气 3好 要求:不能改变表结构及数据内容,仅在最后通过 SELECT 显示出这个查询结果
代码为: create or replace function x return varchar2 is type t_array is table of number index by binary_integer; type tarray is table of varchar2(10) index by binary_integer; ta t_array; tar tarray; re varchar2(10); n number; na varchar2(10); begin select id bulk collect into ta from (select id,name from xx order by id) group by id; for i in st loop dbms_output.put(ta(i)||' '); select name bulk collect into tar from xx where id=ta(i); for i in st loop dbms_output.put(tar(i)); end loop; dbms_output.put_line(' '); end loop; return re; end;

ORACLE数据库测试2及答案

ORACLE数据库测试2及答案

1、表中的约束有哪些?请举例说明。

答:①primary key:学生表的学号②foreign key:成绩表的学号③check:性别in(‘男’,’女’)④not null:学生表的姓名⑤default:订购单订购日期为系统时间⑥unique:学生表中若学号为主键,ID号用unique2、引用索引的原则是什么?P84答:①在表中插入数据后创建索引②索引正确的表和列③合理安排索引列④限制表中索引的数量⑤制定索引数据块空间⑥根据索引大小设置存储参数。

3、简要说明用户、角色和权限之间的关系。

P172答:角色是一组权限,可授予用户或其他角色。

可利用角色来管理数据库权限,可将权限添加到角色中,然后将角色授予用户。

用户可使该角色起作用,并实施角色授予的权限。

一个角色包含所有授予角色的权限及授予它的其他角色的全部权限。

4、oracle的逻辑结构是如何组织的?答:作业中有二、用PL/SQL编程,计算S=1/2+1/4+1/8+…+1/2ⁿ,S精确到万分之一。

解:declaren number:=2;S number:=0;beginloopS:=S+1/n;n:=n*2;if 1-S<=(1/10000) thendbms_output.put_line(S);exit;end if;end loop;end;三、编写存储过程,求指定某门课程(课程名)的平均分数。

解:create or replace procedure proc(kcm in carchar2)avg1 number;beginselect AVG(成绩) as 平均分into avg1 from CJB where 课程号in (select 课程号from KCB where 课程名=kcm and rownum=1);dbms_output.put_line(avg1);end;四、编写触发器,向成绩表中插入一条记录,检查学生是否在学生表中存在,若不存在,则取消该操作。

oracle11g管理与应用实践教程(习题及答案)(2)剖析

oracle11g管理与应用实践教程(习题及答案)(2)剖析

1.6习题Oracle数据库基础一.填空题1、关系模型提供了3类完整性规则,分别是_______、_______、_______。

参考答案:实体完整性规则、参照完整性规则、用户定义的完整性规则2、RDBMS由两部分组成,即_______、_______两部分。

答案:数据库系统内核、数据字典3、关系数据库模型支持三种类型的表关联关系:_______、_______、_______。

答案:一对一、一对多以及多对多4、数据模型的种类有很多,例如_______、_______、_______和_______等。

目前理论最成熟、使用最普及的是_______。

答案:层次模型、网状模型、关系数据模型、面向对象模型。

关系数据模型二、选择题1、Oracle 11g版本号中字母“g”的含义是()A.产品类型的“代”( generation) B.网格(gridding)C.集成(integration)D.无含义答案:B2、设计性能较优的关系模式称为规范化,规范化主要的理论依据是()A.关系规范化理论B.关系运算理论C.关系代数理论D.数理逻辑答案:A3、消除了部分函数依赖的1NF的关系模式必定是()A.1NF B.2NF C.3NF D.4NF答案:B4、当B属于函数依赖于A属性时,属性B与A 的联系是()A.1对多B.多对1 C.多对多D.以上都不是答案:B5、根据关系数据库规范化理论,关系数据库中的关系要满足第一范式。

下面“部门”关系中,因哪个属性而使它不满足第一范式?部门(部门号,部门名,部门成员,部门总经理)A.部门总经理B.部门成员C.部门名D.部门号答案:B6、下列不属于Oracle数据库数据类型的是()A.NUMBER B.FLOAT C.CLOB D.BOOLEAN 答案:D三、简答题1、简述数据库与数据库管理系统的区别。

参考答案:数据库是用来存储信息或数据的机制,是按照数据结构来组织、存储和管理数据的仓库。

Oracle数据库系统应用开发实用教程习题库带答案章节练习题复习题思考题章末测试题1-10章全

Oracle数据库系统应用开发实用教程习题库带答案章节练习题复习题思考题章末测试题1-10章全

习题1一、选择题1.命令行方式的管理工具是()。

A.SQL*PlusB.iSQL*PlusC.Oracle企业管理器控制台D.SQL*Plus工作表2.对Oracle数据库进行管理,可以采用的工具是()。

A.Oracle Universal InstallerB.Oracle Database Configuration AssistantC.Oracle Enterprise Management ConsoleD.Net Manager3.为了使用iSQL*Plus工具,首先要启动()服务。

A.Oracle ServiceSIDB.OracleHOME_NAMETNSListenerC.OracleDBConsoleSIDD.OracleHome_NameiSQL*PLUS4.( )服务监听并接受来自客户端应用程序的连接请求。

A.OracleHOME_NAMETNSListenerB.OracleServiceSIDC.OracleDBConsoleSIDD.OracleHome_NameiSQL*PLUS5.为了使客户应用程序可以访问Oracle Server,在客户端需要配置以下哪个文件?()A.tnsnames.oraB.sqlnet.oraC.listener.ora6.为了使客户应用程序可以访问Oracle Server,在服务器端需要配置以下哪个文件?()A.tnsnames.oraB.sqlnet.oraC.listener.ora二、简答题1.简述Oracle 10g数据库服务器的企业版、标准版、个人版之间的区别和适用环境。

2.安装Oracle 10g 时,对硬件、软件有何要求?3.监听程序有什么作用?它是数据库服务器上的程序还是管理客户机上的程序?4.Oracle有哪些查询工具?5. 如何利用isql*plus连接到Oracle?6. 创建一用户,使之连接到Oracle,并更改其密码。

oracle练习题及答案

oracle练习题及答案

o r a c l e练习题及答案(总7页)--本页仅作为文档封面,使用时请直接删除即可----内页可以根据需求调整合适字体及大小--试题一一、填空题(每小题4分,共20分)1、数据库管理技术经历了___人工管理、文件系统、数据库系统__三个阶段2、数据库三级数据结构是:外模式、模式、内模式3、Oracle数据库中,SGA由_数据库缓冲区,重做日志缓冲区,共享池组成4、在Oracle数据库中,完正性约束类型有:Primay key约束。

Foreign key约束,Unique约束,check约束,not need约束5、PL/SQL中游标操作包括:声明游标,打开游标,提取游标,关闭游标二、正误判断题(每小题2分,共20分)1、数据库中存储的基本对象是数据(T)2、数据库系统的核心是DBMS(T)3、关系操作的特点是集合操作(T)4、关系代数中五种基本运算是并、差、选择、投影、连接(F)5、Oracle进程就是服务器进程(F)6、oraclet系统中SGA所有用户进程和服务器进程所共享(T)7、oracle数据库系统中数据块的大小与操作系统有关(T)8、oracle数据库系统中,启动数据库和第一步是启动一个数据库实例(T)9、PL/SQL中游标的数据是可以改变的(F)10、数据库概念模型主要用于数据库概念结构设计(T)三、简答题(每小题7分,共35分)1、何谓数据与程序的逻辑独立性和物理独立性2、试述关系代数中等值连接与自然连接的区别与联系3、何谓数据库,数据库设计一般分为哪些阶段4、简述Oracle逻辑数据库的组成5、试任举一例说明游标的使用方法五、设有雇员表emp(empno,ename,age,sal,tel,deptno),其中:empno-----编号,name------姓名,age -------年齡,sal-----工资,tel-----电话deptno-----部门号。

请按下列要求分别晨SQL*PLUS下编程。

oracle课后习题答案

oracle课后习题答案

第一章一选择题D D C A D D B二填空题1 视图2 索引3 簇4 DB_Block_size5 system6 数据文件日志文件控制文件7系统全局区SGA 程序全局区PGA三简答题1 P3——P52 P7——P83 P94 P13第二章一选择题B D B二填空题1 orcl2 oracle_sid3 OracleOraDb10g_home1TNSListener第三章一选择题D B B二填空题1 emctl start dbconsole2 主目录性能管理维护3 Oracle Net4 v$database第四章一选择题D C C A二填空题1 shutdown immediate2 startup force3 alter database4 spfile5 db_block_size6 alter system set7 数据库管理员安全官员网络管理员应用程序开发员应用程序管理员数据库用户三操作题4 P635 P65第五章一选择题B C D二填空题1 v$tablespace2 create tablespace3 bigfile4 alter tablespace5 offline6 alter logfile member2 P75——P763 P764 P77——P785 P816 P83第六章一选择题B A A B D二填空题1 grant2 v$pwfile_users3 create user4 password expire5 account lock6 alter role三操作题3 P95第七章一选择题B BC C二填空题1 primary key2 rename column…to3 where4 like5 inner join三操作题2 create table departments(depid number primary key,Depname varchar2(40) not null,Descr varchar(400),Upperid number check(upperid>0));注意:书上的desc是保留字,不能作为表名。

ORACLE复习题含答案

ORACLE复习题含答案

简答题(4*5’)1、简述Oracle数据库体系结构的构成。

答:数据库实例,物理存储结构和逻辑存储结构。

实例包括内存结构与后台进程;物理存储结构主要用于描述Oracle数据库外部数据的存储,即在操作系统中如何组织和管理数据,与具体的操作系统有关;逻辑存储结构主要描述Oracle数据库内部数据的组织和管理方式,与操作系统没有关系。

2、简述Oracle数据库逻辑存储结构的组成及相互关系。

答:Oracle数据库逻辑存储结构包括表空间、段、区、块四种。

其中,数据块是数据库中最小I/O单位,由若干连续的数据块组成的区是数据库中最小的存储分配单元,由若干区形成的段是相同类型的数据存储分配区域,由若干段形成的表空间是最大的逻辑存储单元,所有的表空间构成一个数据库。

3、简述Oracle数据库重做日志文件的作用。

答:重做日志文件,保存了用户对数据库所作的更新操作,包含的主要信息是记录事务的开始和结束、事务中每项操作的对象和类型、更新操作前后的数据值等。

4、简述索引作用并说明索引按不同分类依据分为哪些类。

答:创建索引的作用是为了提高对表中数据的查询效率。

根据索引值是否唯一,可分为唯一性索引和非唯一性索引;根据索引的组织结构不同,可分为平衡索引和位图索引;根据索引基于列数不同,可分为单列索引和复合索引。

5、简述Oracle的安全控制机制有哪些?答:1)、用户管理2)、权限管理3)、角色管理4)、表空间设置和配额5)、用户资源限制6)、数据库审计6、简述Oracle数据库角色的种类、作用以及如何利用角色为用户授权。

答:SYS:是数据库中具有最高权限的数据库管理员,可以启动、修改和关闭数据库,拥有数据字典;SYSTEM:是一个辅助的数据库管理员,不能启动和关闭数据库,但可以进行其他一些管理工作,如创建用户、删除用户等。

SCOTT:是一个用于测试网络连接的用户,其口令为TIGER。

PUBLIC:实质上是一个用户组,数据库中任何一个用户都属于该组成员。

06课后作业-BTC-DB-02-第2章课后作业_ORACLE体系结构答案

06课后作业-BTC-DB-02-第2章课后作业_ORACLE体系结构答案

知识点:ORACLE体系结构练习:ORACLE体系结构:创建一个名为DAVID的用户,口令为davidpass,设定其默认表空间为test,临时表空间为temp,并授予其连接数据库和创建表对象的权限。

同时授予其访问另一用户MARTIN的表TEST的权限。

答案:以SYSTEM身份登录:CREATE USER DAVID IDENTIFIED BY davidpass DEFAULT TABLESPACE test TEMPORARY TABLESPACE Temp;授予登录数据库和创建表的权限GRANT CREATE SESSION TO DAVID;GRANT CREATE TABLE TO DAVID;授予使用表空间的权限ALTER USER DAVID QUOTA UNLIMITED ON USERS;以MARTIN身份登录,授予DAVID对表TEST的权限GRANT SELECT ON TEST TO DAVID; GRANT UPDATE ON TEST TO DAVID;如何创建用户martin,及创建用户martin的test表?以system身份登陆:Create user MARTINIDENTIFIED BY MARTINpass;grant connect to MARTIN;grant resource to MARTIN;grant dba to MARTIN;以MARTIN身份登陆:Create table TEST(Id varchar2(10),Name varchar2(20));删除用户david及其所拥有的对象。

答案:DROP useR DAVID CASCADE;删除表空间test及其内容及数据文件。

答案:drop tablespace test including contents and datafiles;如何创建表空间?Sql>create tablespace histdb datafile 'D:\oracle\product\10.2.0\oradata\orcl\histdb.dbf' size 200m autoextend on next 10m maxsize unlimited;Sql>alter database datafile 'D:\oracle\product\10.2.0\oradata\orcl\histdb.dbf' autoextend on;1) DATAFILE: 表空间数据文件存放路径2) SIZE: 起初设置为200M3) UNIFORM: 指定区尺寸为128k,如不指定,区尺寸默认为64k4) 空间名称histdb 与数据文件名称histdb.dbf 不要求相同,可随意命名.5) AUTOEXTEND ON/OFF 表示启动/停止自动扩展表空间6) alter database datafile ' D:\oracle\product\10.2.0\oradata\orcl\histdb.dbf ' resize 500m; //手动修改数据文件大小为500M什么是SQL,SQL语言分为哪几类?SQL(Structured Query Language)结构化查询语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。

oracle练习题及答案

oracle练习题及答案

oracle练习题及答案Oracle练习题及答案Oracle是一种广泛使用的关系型数据库管理系统,它具有强大的数据处理和管理能力。

对于想要提升自己的数据库技能的人来说,练习题是一个非常有效的学习方法。

通过解答一系列的练习题,可以帮助我们更好地理解Oracle的使用和原理。

下面是一些常见的Oracle练习题及其答案,供大家参考。

1. 查询一个表中所有的数据答案:可以使用SELECT语句来查询一个表中的所有数据。

例如,假设我们有一个名为"employees"的表,可以使用以下语句来查询所有的数据:SELECT * FROM employees;2. 查询一个表中特定列的数据答案:如果我们只想查询一个表中特定列的数据,可以使用SELECT语句,并在其中指定要查询的列名。

例如,如果我们只想查询"employees"表中的"first_name"和"last_name"列,可以使用以下语句:SELECT first_name, last_name FROM employees;3. 查询满足特定条件的数据答案:如果我们只想查询满足特定条件的数据,可以在SELECT语句中使用WHERE子句来指定条件。

例如,如果我们只想查询"employees"表中工资大于5000的员工,可以使用以下语句:SELECT * FROM employees WHERE salary > 5000;4. 对查询结果进行排序答案:如果我们想对查询结果进行排序,可以在SELECT语句中使用ORDER BY子句,并指定要排序的列名。

例如,如果我们想按照"employees"表中的"last_name"列进行升序排序,可以使用以下语句:SELECT * FROM employees ORDER BY last_name ASC;5. 对查询结果进行分组答案:如果我们想对查询结果进行分组,可以在SELECT语句中使用GROUP BY 子句,并指定要分组的列名。

Oracle综合测试二(含答案)

Oracle综合测试二(含答案)

综合测试二一、基础设置1.1 创建新用户test1密码test11.2 赋予test1管理员权限1.3 给予用户创建会话的权限1.4 给予用户创建表的权限1.5 修改当前会话的时间显示为以下格式“yyyy-mm-dd hh:mm:ss”二、数据管理操作某个学生运动会比赛信息的数据库,保存了如下的表:表1:运动会信息表gameinfo表2:运动员sporter成绩grade请用SQL语句完成如下功能:1. 在test1用户下建表,注意满足如下要求:a) 定义各个表的主码外码约束b) 运动员的姓名和所属系别不能为空值。

c) 积分要么为空值,要么为6,4,2,0, 分别代表第一,二,三名和其他名次的积分。

2. 往表中插入数据:运动会表(101,秋季运动会,工业大学,2008-8-8,1000,12300.50)运动员(1001, 李明,男,计算机系1002,张三,男,数学系1003, 李四,男,计算机系1004, 王二,男,物理系1005, 李娜,女,心理系1006, 孙丽,女,数学系)项目(x001, 男子五千米,一操场x002,男子标枪,一操场x003, 男子跳远,二操场x004, 女子跳高,二操场x005, 女子三千米,三操场)使用批量操作插入此表数据积分(1001, x001, 61002, x001, 41003, x001, 21004, x001, 01001, x003, 41002, x003, 61004, x003, 21005, x004, 61006, x004, 4)3. 完成如下操作1)查询运动会信息表以文字形式显示运动会的信息。

例如:工业大学秋季运动会在2008年8月8日举行,参加人数1000人,赛会预计费用12,300.50元。

2)由于客观原因,参赛人数减少20%,费用缩减为原来的90%,请更改运动会信息表。

3)1006号运动员的信息更改为孙梦,外语系。

4)计算参加运动会的男女运动员共多少人。

Oracle数据库基础教程-参考答案

Oracle数据库基础教程-参考答案

Oracle数据库基础教程-参考答案第2章数据库服务器的安装与卸载一..在安装数据库服务器之前需要进行如下准备:①启动操作系统,并以Administrator 身份登录。

②检查计算机名称、检查源文件完整路径,如果包含中文字符则需要修改为不含中文字符。

③检查服务器系统是否满足软硬件要求。

④对服务器进行正确网络配置。

⑤如果服务器上运行其它Oracle服务,必须在安装前将它们全部停止。

⑥如果服务器上运行有以前版本的Oracle数据库,则必须对其数据进行备份。

⑦决定数据库的创建方式。

(2)数据库服务器的企业版,标准版,个人版有什么区别?并适用于什么环境?企业版数据库服务器包含所有的数据库组件,主要针对高端的应用环境,适用于安全性和性能要求较高的联机事务处理(OLTP)、查询密集型的数据仓库和要求较高的 Internet应用程序:标准版数据库服务器提供大部分核心的数据库功能和特性,适合于工作组或部门级的应用程序:个人版数据库服务器只提供基本数据库管理功能和特性,适合单用户的开发环境,为用户提供开发测试平台。

(3)常用的数据库类型?有何区别?分别适用于什么类型的应用常用数据库类型包括事务处理类、数据仓库类以通用类型。

其中事务处理类型主要针对具有大量并发用户连接,并且用户主要执行简单事务处理的应用环境。

事务处理数据库的典型应用有银行系统数据库、Internet电子商务数据库、证券交易系统数据库等。

对于需要较高的可用性和事务处理性能、存在大量用户并行访问相同数据以及需要较高恢复性能的数据库环境,事务处理类型的配置可以提供最佳性能;数据仓库类型的数据库主要针对有大量的对某个主题进行复杂查询的应用环境。

数据仓库的典型应用有客户订单研究、支持呼叫、销售预测、采购模式以及其他战略性业务问题的历史数据研究。

对于需要对大量数据进行快速访问,以及复杂查询的数据库环境,数据仓库类型配置是最佳选择;通用类型配置的数据库是事务处理数据库与数据仓库配置的折衷方案。

Oracle第二章习题及答案

Oracle第二章习题及答案

、基于自己创建表的操作1:创建一张学生表student,拥有stuid,stuname,sex三个字段,其中stuid 为主键。

create table student(stuid int primary key,stuname VARCHAR(20),sex VARCHAR(20)2:为该表增加一个新列score。

alter table student add(score varchar(10));3:修改该表score 列名为stuscore。

alter table student rename column score to stuscoree;4:为student 表插入5 条记录。

insert into student values(1,'张三丰','男',80);in sert into stude nt values(2,'阿悄','女',70);in sert into stude nt values(3,'陈龙','男',90);insert into student values(4,'章子怡','女',50);insert into student values(5,'张卫健','男',60);5:查询student 表中的全部数据,其中列名为中文。

selectSTUIDas学号,STUNAMEas生名,SEXa性别,STUSCOREE分数fromstudent;6 :查询学生姓名和分数,并是查询结果按照学生成绩降序排列。

select STUNAME,STUSCOREE from student order by STUSCOREE desc;7:修改所有性别为“男”的学生信息为性别为“male。

”up date stude nt set SEX-male' where SEX男:8:删除所有记录。

oracle教程(第二版)》部分习题参考答案

oracle教程(第二版)》部分习题参考答案

文字性习题答案参见相应章节内容第1章习题1D A C C第2章习题1执行edit命令打开文本编辑器;使用column命令设置列显示宽度习题2CONN scott/tiger@orclSELECT * FROM tab; --本题严谨一些的答案是查询ALL_OBJECTS视图,带条件查询习题3@d:\init_data\init_data.sql习题4SET PAGESIZE 24SET LINESIZE 100COLUMN sal FORMA T $99,990.00第3章习题1D B习题2CONN stu01/stu01pwd@orclCOLUMN USERNAME FORMA T A10SELECT username,granted_role FROM user_role_privs;习题5CREA TE SESSION 系统权限习题11CONN scott/tiger@orclCOLUMN GRANTEE FORMA T A10SELECT grantee,table_name,grantor,privilege,grantableFROM user_tab_privs_made;习题12CONN system/systempwd@orclCOLUMN GRANTEE FORMA T A22SELECT grantee,privilege,admin_option FROM dba_sys_privsORDER BY grantee,privilege;SELECT grantee,granted_role FROM dba_role_privs;使用REVOKE命令回收不必要的系统权限和角色。

\第4章习题8CONN /@cemerp AS SYSDBAALTER USER scott QUOTA 10M ON USERS;习题9CONN system/systempwd@orclCREA TE TABLESPACE data_ts1DA TAFILE '%ORACLE_BASE%\oradata\orcl\data_ts1.dbf' SIZE 10000M REUSE; CREA TE TEMPORARY TABLESPACE temp_ts1TEMPFILE '%ORACLE_BASE%\oradata\orcl\temp_ts1.dbf' SIZE 200M REUSE; CREA TE USER surtec IDENTIFIED BY surtecpwdDEFAULT TABLESPACE data_ts1 TEMPORARY TABLESPACE temp_ts1; GRANT CREA TE SESSION TO surtec;GRANT RESOURCE TO surtec;CONN surtec/surtecpwd@orcl--创建该用户的表emp……--授权给SIBGRANT SELECT ON emp TO sib;GRANT UPDA TE(flag) ON endowment_insurance TO sib;习题10CONN system/systempwd@orclCREA TE USER test01 IDENTIFIED BY test1234;GRANT CREA TE SESSION TO test01;GRANT CREA TE TABLESPACE TO test01;CONN test01/test1234@orclCREA TE TABLESPACE test_tsDA TAFILE '%ORACLE_BASE%\oradata\orcl\test_ts.dbf' SIZE 100KAUTOEXTEND ON NEXT 50K MAXSIZE 5M UNIFORM SIZE 50K;ALTER TABLESPACE test_tsADD DA TAFILE '%ORACLE_BASE%\oradata\orcl\test_ts2.dbf' SIZE 10M; ALTER DA TABASEDA TAFILE '%ORACLE_BASE%\oradata\orcl\test_ts2.dbf' RESIZE 15M ;习题11CONN system/systempwd@orclALTER TABLESPACE pur_tsADD DA TAFILE '%ORACLE_BASE%\oradata\orcl\pur_data.dbf' SIZE 800M; ALTER DA TABASEDA TAFILE '%ORACLE_BASE%\oradata\orcl\pur_data.dbf' RESIZE 2000M ; ALTER DA TABASE DA TAFILE '%ORACLE_BASE%\oradata\orcl\pur_data.dbf' AUTOEXTEND ON NEXT 30M;第5章习题1B A习题8(1)撤销表空间中不允许建立永久方案对象;将方案对象建立在数据表空间即可。

oracle课后习题答案

oracle课后习题答案

oracle课后习题答案Oracle课后习题答案在学习Oracle数据库时,完成课后习题是巩固知识的重要方式。

本文将为大家提供一些常见Oracle课后习题的答案,帮助读者更好地理解和应用数据库知识。

一、基本概念题1. 什么是数据库?答:数据库是一个组织和存储数据的系统。

它是一个结构化的集合,用于存储、管理和操纵数据,并提供对数据的安全性和完整性的保证。

2. 什么是表?答:表是数据库中的一个基本组成部分,用于存储数据。

它由行和列组成,行表示记录,列表示记录中的字段。

3. 什么是SQL?答:SQL(Structured Query Language)是一种用于访问和管理关系型数据库的语言。

它可以用于查询、插入、更新和删除数据,以及创建和管理数据库对象。

二、SQL查询题1. 查询员工表中所有员工的姓名和工资。

答:SELECT 姓名, 工资 FROM 员工表;2. 查询订单表中订单金额大于1000的订单号和金额。

答:SELECT 订单号, 订单金额 FROM 订单表 WHERE 订单金额 > 1000;3. 查询客户表中所有客户的姓名和地址,按照地址降序排列。

答:SELECT 姓名, 地址 FROM 客户表 ORDER BY 地址 DESC;三、SQL插入题1. 向员工表中插入一条记录,姓名为"张三",工资为5000。

答:INSERT INTO 员工表 (姓名, 工资) VALUES ('张三', 5000);2. 向订单表中插入一条记录,订单号为"2021001",金额为2000。

答:INSERT INTO 订单表 (订单号, 订单金额) VALUES ('2021001', 2000);四、SQL更新题1. 将员工表中工资低于3000的员工工资增加1000。

答:UPDATE 员工表 SET 工资 = 工资 + 1000 WHERE 工资 < 3000;2. 将客户表中地址为"北京市"的客户地址改为"上海市"。

ORACLE数据库基础教程课后参考答案(人民邮电出版社)

ORACLE数据库基础教程课后参考答案(人民邮电出版社)

ORACLE 10g 课后参考答案(答案仅供参考)第一章ORACLE 10g简介一、选择题1.下面不属于ORACLE 10g产品系列的是(D)A.Oracle数据库 10g标准版1B.Oracle数据库 10g标准版C.Oracle数据库 10g企业版D.Oracle数据库 10g网络版2.ORACLE 10g中的g表示(D)A.版本B.网络C.数据库D.网格计算3.下面关于ORACLE 10g数据库逻辑结构的描述错误的是(C)A.数据库由若干个表空间组成B.表空间由表组成C.表由数据块组成D.段由区间组成4.ORACLE管理数据库存储空间的最小存储单位是(A)A.数据块B.表空间C.表D.区间5.ORACLE分配磁盘空间的最小单位是(D)A.数据块B.表空间C.表D.区间6.下列不属于ORACLE表空间的是(D)A.大文件表空间B.系统表空间C.撤销表空间D.网格表空间7.当数据库服务器上的一个数据库启动时,ORACLE将分配一块内存区间,叫做系统全局区,英文缩写为(B)A.VGAB.SGAC.PGAD.GLOBAL二、填空题1.__视图__ 是虚拟的表,它在物理上并不存在。

可以把它看成是一个存储的查询。

2.创建___索引__可以提高读取数据的效率。

它的功能类似于书的目录,读者可以通过目录很快的在书中找到需要的内容。

3.有些表共享公共的列,并经常被同时访问,为了提高数据存取效率,把这些表在物理上存储在一起,得到的表的组合就是____簇____。

4.一个数据块对应磁盘上的一定数量的数据库空间,标准的数据块大小由初始参数(DB_BLOCK_SIZE )指定。

5.每个数据库都至少有一个系统表空间,被称为__SYSTEM _表空间。

6.每个ORACLE数据库都由3种类型的文件组成:数据文件、日志文件、控制文件。

7.ORACLE有两种内存结构,即_系统全局区_和_程序全局区_。

三、简答题1.简述ORACLE数据库逻辑结构中各要素之间的关系。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一、基于自己创建表的操作1:创建一张学生表student,拥有stuid,stuname,sex,三个字段,其中stuid为主键。

create table student(stuid int primary key,stuname VARCHAR(20),sex VARCHAR(20))2:为该表增加一个新列score。

alter table student add(score varchar(10));3:修改该表score列名为stuscore。

alter table student rename column score to stuscoree;4:为student表插入5条记录。

insert into student values(1,'张三丰','男',80);insert into student values(2,'阿悄','女',70);insert into student values(3,'陈龙','男',90);insert into student values(4,'章子怡','女',50);insert into student values(5,'张卫健','男',60);5:查询student表中的全部数据,其中列名为中文。

select STUID as 学号,STUNAME as 姓名,SEX as 性别,STUSCOREE as 分数from student;6:查询学生姓名和分数,并是查询结果按照学生成绩降序排列。

select STUNAME,STUSCOREE from student order by STUSCOREE desc;7:修改所有性别为“男”的学生信息为性别为“male”。

update student set SEX='male' where SEX='男';8:删除所有记录。

delete from student;9:删除student表。

drop table student;二、基于emp表的操作1:创建一张新表emp1,和emp表结构和记录完全一样。

create table emp1 as select*from Scott.Emp;基于emp1表的操作:1:选择部门30中的雇员。

select*from emp1 where DEPTNO=30 and JOB='CLERK';2:列出所有办事员(CLERK)的姓名、编号和部门。

select ENAME,EMPNO,DEPTNO from emp1 where JOB='CLERK';3:找出佣金高(comm)于薪金的雇员。

select*from emp1 where COMM> SAL and JOB='CLERK';4:找出佣金高于薪金60%的雇员。

select*from emp1 where COMM*0.6> SAL and JOB='CLERK';5:找出部门10中所有经理和部门20中所有办事员的详细资料。

select*from emp1 where DEPTNO=10 and JOB='MANAGER' union select*from emp1 where JOB='SALESMAN';6:找出部门10中所有经理和部门20中所有办事员以及既不是经理又不是办事员但其薪金大于或等于2000的所有雇员的详细资料。

select*from emp1 where DEPTNO=10 and JOB='MANAGER' union select*from emp1 where JOB='SALESMAN' union select*from emp1 where JOB in('CLERK') and SAL>=2000;7:找出收取佣金的雇员的不同工作。

select distinct JOB from emp1 where job='CLERK';8:找出不收取佣金或收取佣金低于100的雇员。

select *from emp1 where COMM is null or nvl(COMM,0)<100;9:按照部门编号显示所有雇员信息。

select *from emp1 order by DEPTNO;作业要求:将SQL语句复制粘贴在相对应的题目下面。

1:找出各月最后一天受雇的所有雇员select deptno,ename from emp where hiredate =last_day(hiredate);2:找出早于12年之前受雇的雇员select ENAME,months_between(sysdate,HIREDATE)/12 as 年from emp where JOB='CLERK' and (months_between(sysdate,HIREDATE)/12)>12;3:显示只有首字母大写的所有雇员的姓名select UPPER( SUBSTR(ename,1,1)) ||LOWER(SUBSTR(ename,2,LENGTH(ename)-1)) FROM emp where JOB='CLERK';4:显示正好为15个字符的雇员姓名select deptno,ename from emp where length(ename)=15 and JOB='CLERK';5:显示不带有‘R’的雇员姓名select ename from emp where ename not like '%R%'and JOB='CLERK';6:显示所有雇员的姓名的前3个字符select substr(ename,1,3) from emp where JOB='CLERK';7:显示所有雇员的姓名,用‘a’替换所有的‘A’select replace(ename,'A','a') from emp;8:显示所有雇员的姓名以及满10年服务年限的日期select ename,hiredate,add_months(hiredate,10*12) from emp;9:显示雇员的详细资料,按姓名排序select * from emp order by ename;10:显示雇员姓名,根据其服务年限,将最老的雇员排在最前面select empno,ename,job,mgr,hiredate,sal ,comm,deptno ,(sysdate-hiredate)/365 from emp order by (sysdate-hiredate)/365 desc;11:显示所有雇员的姓名、工作和薪金,按工作内的工作的降序顺序排序,而工作按薪金排序select ename,job,sal from emp order by job desc,sal asc;12:显示所有雇员的姓名和加入公司的年份和月份,按雇员受雇日所在月排序,并将最早年份的项目排在最前面select ename,to_char(hiredate,'YYYY') year1,to_char(hiredate,'MON') month1 from emp order by year1 asc,month1;13:显示在一个月为30天的情况下所有雇员的日薪金,忽略小数select round(sal/30,0) as daypay from emp;14:找出在(任何年份的)2月份受雇的所有雇员select * from emp where hiredate like '%-2月%';15:对于每个雇员,显示其加入公司的天数select round((sysdate-hiredate)) from emp;16:显示姓名字段的任何位置,包含‘A’的所有雇员的姓名select ename from emp where ename like '%A%';17:以年、月和日显示所有雇员的服务年限selectename,to_number(to_char(sysdate,'YYYY'))-to_number(to_char(hiredate,'YYYY'))-1,to_number(t o_char(sysdate,'mm'))-to_number(to_char(hiredate,'mm'))+10,to_number(to_char(sysdate,'dd'))-to_number(to_char(hiredate,'dd'))+30 from emp;18: 列出至少有一个雇员的所有部门select deptno from emp group by deptno having count(deptno)>0;19:列出薪金比“SMITH”多的所有雇员SELECT ename,sal, deptno FROM emp WHERE sal>(SELECT sal FROM emp WHERE ename='SMITH');20:列出所有雇员的姓名及其部门名select ENAME,DEPTNO from emp where JOB='CLERK';21:列出所有入职日期早于其直接上级的所有雇员SELECT e.ename as 职工, m.ename as 经理FROM emp e left join emp m on (e.mgr=m.empno) where e.hiredate<m.hiredate;22:列出各种类别的最低薪金,并使薪金大于1500select job, min(sal) from emp group by job having min(sal)>1500;23:列出薪金高于公司平均水平的所有雇员select ename, deptno from emp where sal>(select avg(sal) from emp);24:列出与“SCOTT”从事相同工作的所有雇员select deptno,ename from emp where job=(select job from emp where ename='SCOTT');25:列出薪金高于在部门30工作的所有雇员的薪金SELECT ename,sal from emp where sal >all(select sal from emp where deptno=30);26:列出薪金高于在部门30工作的最高的薪金SELECT ename,sal from emp where sal>all(select max(sal) from emp where deptno=30);27:列出每个部门雇员的数量select deptno,count(*) from emp group by deptno;28:列出所有雇员的名称,部门名称和薪金select ENAME,DEPTNO,SAL from emp where JOB='CLERK';29:列出从事同一种工作但不属于同一部门的这些员工select job,deptno from emp group by job,deptno;30:列出个类别工作的最低工资select job,min(sal) from emp group by job;31:列出各个部门的经理的最低薪金select DEPTNO,min(sal) from emp where job='MANAGER' group by DEPTNO;32:列出按计算的字段排序的所有雇员的年薪select ename,(sal+nvl(comm,0))*12 as yearpay from emp order by yearpay desc;33:列出所有CLERK的姓名及其部门名称select ENAME,DEPTNO from ep where JOB='CLERK';34:列出薪金水平处于前四位的雇员select sal,ename from emp order by sal desc;35:求出所有员工入职了多少年零多少月零多少天select empno,ename,to_char(floor(to_number((sysdate-hiredate)/365)))||' years '||to_char(ceil(months_between(sysdate,hiredate)-(floor(to_number((sysdate-hiredate)/365)))* 12))||' months ' from emp;作业要求:将SQL语句复制粘贴在相对应的题目下面。

相关文档
最新文档