《数据库技术与Oracle》习题笔记
oracle 笔记
oracle 笔记Oracle是一种关系数据库管理系统,由Oracle Corporation开发。
以下是关于Oracle的一些笔记:1. 数据库架构:Oracle数据库有两个主要的架构:逻辑架构和物理架构。
逻辑架构包括了数据库对象(表、索引、视图等)以及用户和角色的定义。
物理架构指的是数据在磁盘上的存储方式。
2. 数据库对象:Oracle数据库中的主要对象包括表、索引、视图、触发器、存储过程等。
表是最基本的对象,用于存储数据。
索引用于加快表的查询速度。
视图是一种虚拟表,通过查询一个或多个表返回结果。
触发器是一种在表上定义的操作,当满足某些条件时触发。
存储过程是一段可重复使用的程序代码,用于完成特定的任务。
3. SQL语言:Oracle数据库使用SQL(Structured Query Language)进行数据库操作。
SQL语言包括数据查询语句(SELECT)、数据操作语句(INSERT、UPDATE、DELETE)以及数据定义语句(CREATE、ALTER、DROP)等。
4. 数据库管理:Oracle提供了一套完整的数据库管理工具,包括创建数据库、备份和恢复数据库、监控数据库性能等。
其中,Oracle Enterprise Manager是一个图形化界面的管理工具,可以通过它来管理和监控整个数据库系统。
5. 数据完整性:Oracle数据库通过约束条件来确保数据的完整性。
主键、外键、唯一约束、非空约束等都可以用于限制数据的输入。
此外,还可以使用触发器和存储过程来定义自定义的数据完整性规则。
6. 事务管理:Oracle数据库使用ACID(原子性、一致性、隔离性、持久性)模型来管理事务。
事务是一系列数据库操作的逻辑执行单元,要么全部执行成功,要么全部回滚。
这些只是Oracle数据库的一些基本概念和特点,还有很多其他的内容,如高可用性、性能优化、安全性等。
如果想要深入了解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数据库基础题库【含答案】
Oracle数据库基础题库【含答案】一、判断题,正确请写写"T",错误请写写"F",1、oracle数据库系统中,启动数据库的第一步是启动一个数据库实例。
( T )2、Oracle服务器端的监听程序是驻留在服务器上的单独进程,专门负责响应客户机的连接请求。
( F)3、oracle数据库中实例和数据库是一一对应的(非ORACLE并行服务,非集群)。
( T)4、系统全局区SGA 是针对某一服务器进程而保留的内存区域,它是不可以共享的。
( F )5、数据库字典视图ALL_***视图只包含当前用户拥有的数据库对象信息。
( F )8、数据字典中的内容都被保存在SYSTEM表空间中。
( T )9、HAVING后面的条件中可以有聚集函数,比如SUM(),AVG()等,WHERE 后面的条件中也可以有聚集函数。
( F )10、"上海西北京" 可以通过like ‘%上海_’查出来。
( F )11、表空间是oracle 最大的逻辑组成部分。
Oracle数据库由一个或多个表空间组成。
一个表空间由一个或多个数据文件组成,但一个数据文件只能属于一个表空间。
( T )12、表空间分为永久表空间和临时表空间两种类型。
( T )13、truncate是DDL操作,不能 rollback。
( T )14、如果需要向表中插入一批已经存在的数据,可以在INSERT 语句中使用WHERE 语句。
( F )15、Oracle数据库中字符串和日期必须使用双引号标识。
( F )16、Oracle数据库中字符串数据是区分大小写的。
( T )17、Oracle数据库中可以对约束进行禁用,禁用约束可以在执行一些特殊操作时候保证操作能正常进行。
( F )18、为了节省存储空间,定义表时应该将可能包含NULL值的字段放在字段列表的末尾。
( T )20、在连接操作中,如果左表和右表中不满足连接条件的数据都出现在结果中,那么这种连接是全外连接。
Oracle10g数据库管理、应用与开发标准教程课后习题答案(全)包括16章精讲
第二章 、填空题I.Oracle 数据库系统的物理存储结构主要由3类文件组成,分别为 数据文件、日志文件、控制文件。
(另外还包含一些 参数文件)2. 用户对数据库的操作如果产生日志信息、则该日志信息首先被存储在 日志缓冲区中,随后由LGWR 进程保存到 日志文件。
3. 一个表空间物理上对应一个或多个 数据文件。
4. 在Oracle 的逻辑存储结构中,根据存储数据的类型,可以将段分为数据段、索引段、回退段、LOB 段和临时段。
5. 在Oracle 的逻辑存储结构中, 数据块是最小的I/O 单元。
6. 在多进程Oracle 实例系统中,进程分为 用户进程、后台进程和服务器进程。
当一个用户 运行应用程序,如 PRO*C 程序或一个Oracle 工具(如SQL*Plus ),系统将为用户运行的应 用程序建立一个 用户进程。
、选择题1. 下列选项中,哪一部分不是 Oracle 实例的组成部分? CA.系统全局区SGA B. PMON 后台进程C.控制文件2. 在全局存储区SGA 中,哪部分内存区域是循环使用的? BA.数据缓冲区 B. 日志缓冲区C.共享池D.大池 3. 解析后的SQL 语句在SGA 的哪个区域中进行缓存? C5.如果服务器进程无法在数据缓冲区中找到空闲缓存块,以添加从数据文件中读取的数据 块,则将启动如下哪一个进程? DA.CKPTB.SMONG LGWR D.DBWR6. 下列关于共享服务器模式的叙述哪一项不正确?AA. 在共享服务器操作模式下,每一个用户进程必须对应一个服务器进程B. 一个数据库实例可以启动多个调度进程C. 在共享服务器操作模式下, Oracle 实例将启动调度进程Dnnn 为用户进程分配服务进程D. 共享服务器操作模式可以实现少量服务器进程为大量用户进程提供服务 7.当数据库运行在归档模式下时,如果发生日志切换,为了保证不覆盖旧的日志信息, 系统将启动如下哪一个进程?DA.DBWRB.L GWRC.SMOND.ARCH8. 下列哪一个进程和数据库部件可以保证用户对数据库所做的修改在没有保存的情况下, 不会发生丢失修改数据? CA.DBWR 和数据文件 B.LGWR 和日志文件组 C.CKPT 和控制文件 D.ARCH 和归档日志文件D.D nnn 调度进程A.数据缓冲区B. 日志缓冲区C.共享池D.大池4.如果一个服务进程非正常终止,源? DOracle 系统将使用下列哪一个进程来释放它所占用的资A.DBWRB.L GWRC.SMOND.P MON9.下列哪一个进程用于将修改过的数据从内存保存到磁盘数据文件中? AA.DBWRB.L GWRC.RECOD.ARCH10.如果要查询数据库中所有表的信息,应当使用下列哪种数据字典视图? AA.DBA视图B.ALL视图ER视图D.动态性能视图11.下列哪一项是Oracle数据库中最小的存储分配单元?A.表空间B.段C.盘区D.数据块12.下面的各项中哪一个正确描述了Oracle数据库的逻辑存储结构? AA.表空间由段组成,段由盘区组成,盘区由数据块组成B.段由表空间组成,表空间由盘区组成,盘区由数据块组成C•盘区由数据块组成,数据块由段组成,段由表空间组成D.数据块由段组成,段由盘区组成,盘区由表空间组成第三章一、填空题1.标准的SQL语言语句类型可以分为:数据定义语句(DDL、数据操纵语句(DML和数据控制语句(DCL 。
Oracle数据库基础题库【含答案】
1、判断题,正确请写写"T",错误请写写"F",1、oracle数据库系统中,启动数据库的第一步是启动一个数据库实例。
( T )2、Oracle服务器端的监听程序是驻留在服务器上的单独进程,专门负责响应客户机的连接请求。
( F)3、oracle数据库中实例和数据库是一一对应的(非ORACLE并行服务,非集群)。
( T)4、系统全局区SGA 是针对某一服务器进程而保留的内存区域,它是不可以共享的。
( F )5、数据库字典视图ALL_***视图只包含当前用户拥有的数据库对象信息。
( F )8、数据字典中的内容都被保存在SYSTEM表空间中。
( T )9、HAVING后面的条件中可以有聚集函数,比如SUM(),AVG()等, WHERE 后面的条件中也可以有聚集函数。
( F )10、"上海西北京" 可以通过like ‘%上海_’查出来。
( F )11、表空间是oracle 最大的逻辑组成部分。
Oracle数据库由一个或多个表空间组成。
一个表空间由一个或多个数据文件组成,但一个数据文件只能属于一个表空间。
( T )12、表空间分为永久表空间和临时表空间两种类型。
( T )13、truncate是DDL操作,不能 rollback。
( T )14、如果需要向表中插入一批已经存在的数据,可以在INSERT语句中使用WHERE语句。
( F )15、Oracle数据库中字符串和日期必须使用双引号标识。
( F )16、Oracle数据库中字符串数据是区分大小写的。
( T )17、Oracle数据库中可以对约束进行禁用,禁用约束可以在执行一些特殊操作时候保证操作能正常进行。
( F )18、为了节省存储空间,定义表时应该将可能包含NULL值的字段放在字段列表的末尾。
( T ) 20、在连接操作中,如果左表和右表中不满足连接条件的数据都出现在结果中,那么这种连接是全外连接。
oracle数据库复习提纲及其答案详解
oracle数据库复习提纲及其答案详解Oracle数据库复习提纲一、Oracle10g简介1、Oracle10g一共有哪几个版本?Oracle数据库10g标准版1,Oracle数据库10g标准版,Oracle数据库10g企业版,Oracle数据库10g个人版.2、 Oracle10g中的g是什么含义?Oracle 10g的g就代表grid computing。
3、理解Oracle数据库中的方案、数据块、区间、段、表、表空间之间的关系。
Oracle 数据库的逻辑结构包括方案(schema)对象、数据块(data block)、区间(extent)、段(segment)和表空间(tablespace)等。
数据库由若干个表空间组成,表空间由表组成,表由段组成,段由区间组成,区间则由数据块组成4、标准数据块大小由初始参数(DB_BLOCK_SIZE)指定。
5、理解数据库、表空间、数据文件之间的关系。
每个表空间由一个或多个数据文件组成。
数据文件用于在物理上存储表空间中所有逻辑结构的数据。
表空间中数据文件的大小之和就是表空间的存储容量(图中系统表空间存储容量为2MB,用户表空间的存储容量为4MB)。
数据库中表空间的存储容量之和就是数据库的存储容量。
6、叙述Oracle数据库的物理结构。
(每个Oracle数据库都由3类文件组成:数据文件、日志文件、控制文件,……)Oracle数据库有一个或多个物理的数据文件。
数据库的数据文件包含全部数据库数据。
逻辑数据物理地存储在数据文件中。
数据文件有下列特征:一个数据文件仅与一个数据库联系。
当数据库容量越界时,数据文件能够自动扩展。
一个或多个数据文件组成一个表空间。
每个数据库有两个或多个日志文件组,日志文件组用于收集数据库日志。
日志的主要功能是记录对数据所作的修改,所有对数据库作的全部修改记录在日志中。
每个Oracle数据库有一个控制文件,记录数据库的物理结构。
控制文件包含数据库名、数据库数据文件和日志文件的名字、位置和数据库建立日期等信息。
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数据库应用》练习题及答案《Oracle 数据库应用》选择题1. __________________________________ 在Windows 操作系统中,Oracle 的服务监听并接受来自客户端应用程序的连接请求。
OracleHOME_NAMETNSListe ner OracleServiceSID OracleHOME_NAMEAge nt OracleHOME_NAMEHTT PServer 2. ORACLE 中,用来判断列值是否为空的操作符是3. 在CUSTOME 中有一列为单价(PRICE ,写一个 SELECT 命令显示所有单价在 500以上的查询语句SELECT * FROM CUSTOMER WHERE P RICE MORE THAN 500; SELECT * FROM CUSTOMER WHERE P RICE BETWEEN 500 AND *; SELECT * FROM CUSTOMER WHERE P RICKE '%500%'; SELECT * FROM CUSTOMER WHERE P RICE>=500; Oracle 中,使用HAVING 子句也可以进行条件查询,以下选项说法是正确的A 、HAVING 子句和 WHER 子句相同B 、HAVING 子句用于行的条件查询C 、HAVING 子句用于已分组结果的条件查询D 、以上皆非 5.在安装oracle时,自动开启了的账号是A 、SystemB 、SaC 、ScottD 、Administrator6. 下列哪一项是Oracle 数据库中最小的存储分配单元(A 、表空间B 、段C 、盘区D 、数据块A 、B、 CA 、==NULLNULLISB 、IS NULLC 、 AS NULLA 、B 、C4.在是 __7. ()是一个很小的二进制文件,它维护着数据库的全局物理结构,用以支持数据库成功地启动和运行。
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 10g数据库基础教程 课后题答案 选择
第3章创建数据库(1)后台进程跟踪文件的位置是CA.LOGFILE_DEST B.ORACLE_HOME C.BACKGROUND_DUMP_DEST D.CORE_DUMP_DEST (2)手动创建数据库的第一步是DA.启动实例B.启动SQL*Plus 以SYSDBA身份连接OracleC.查看系统的实例名D.创建参数文件(3)关于控制文件以下正确的是AA.Oracle建议至少二个控制文件存放在二个磁盘分区B.Oracle建议至少二个控制文件存放在一个磁盘分区C.Oracle建议存放一个控制文件D.一个控制文件不足以运行数据库(4)执行CREATE DA TABASE命令之前,应该发出的命令是B A.STARTUP INSTANCE B.STARTUP NOMOUNT C.STARTUP MOUNT D.以上都不是(5)创建数据库时,Oracle如何得知需要创建的控制文件信息?A A.从初始化参数文件B.从CREATE DATABASE 命令C.从环境变量D.从$ORACLE_HOME目录名为<db_name>.ctl的文件(6)哪个脚本文件创建数据字典视图?AA.catalog.sql B.catproc.sql C.sql.sql D.dictionary.sql (7)创建数据库时,DATAFILE子句能定义几个数据文件?D A.一个B.二个C.多个;仅一个属于系统表空间D.多个;都属于系统表空间(8)谁拥有数据字典?AA.SYS B.SYSTEM C.DBA D.ORACLE (9)在CREATE DA TABASE命令中,非法子句是BA.MAXLOGMEMBERS B.MAXLOGGROUPSC.MAXDATAFILES D.MAXLOGHISTORY (10)创建一个数据库至少需要几个控制文件?AA.一个B.二个C.三个D.无第5章物理存储结构(1)关于联机重做日志,以下哪两个说法是正确的?BCA.所有日志组的所有文件都是同样大小B.一组中的所有成员文件都是同样大小C.成员文件应置于不同的磁盘D.回滚段大小决定成员文件大小(2)DBA使用哪个命令显示当前归档状态?AA.ARCHIVE LOG LIST B.FROM ARCHIVE LOGSC.SELECT * FROM V$THREAD D.SELECT * FROM ARCHIVE_LOG_LIST (3)创建一个数据库需要多少个控制文件?AA.1B.2 C.3 D.0(4)将下句补充完整:控制文件的建议配置是CA.每数据库一个控制文件B.每磁盘一个控制文件C.二个控制文件置于二个磁盘D.二个控制文件置于一个磁盘(5)当创建控制文件时,数据库必须处于什么状态?BA.加载B.未加载C.打开D.受限(6)哪个数据字典视图显示数据库处于归档状态?CA. V$INSTANCE B.V$LOG C.V$DATABASE D.V$THREAD(7)把多路镜像控制文件存于不同磁盘最大的好处是BA.数据库性能提高B.防止失败C.提高归档速度D.能并发访问提高控制文件的写入速度(8)哪个文件用于记录数据库的改变,并且用于实例的恢复?BA.Archive log file B.Redo log file C.Control file D.Alert log file(9)一个实例可以建立几个归档进程?CA.5 B.4 C.10D.取决于操作系统(10)定义归档目标地址时,哪两个参数不能一起使用?AB ACA.LOG_ARCHIVE_DEST and LOG_ARCHIVE_DUPLEX_DESTB.LOG_ARCHIVE_DEST and LOG_ARCHIVE_DEST_1C.LOG_ARCHIVE_DEST and LOG_ARCHIVE_DEST_2D.以上都不是;可以指定所有的归档参数第6章逻辑存储结构(1)段的集合称为CA.区B.段C.表空间D.数据库(2)当数据库崩溃,何时使用回滚信息?CA.在崩溃之前B.恢复完成之后C.数据库重新打开之后、恢复之前D.数据库崩溃后回滚信息不被使用(3)数据字典表和视图存储在BA.USERS表空间B.SYSTEM表空间C.TEMPORARY表空间D.以上三个中任意(4)PCTFREE与PCTUSED之和不应超过AA.100 B.50 C.25 D.10(5)数据块的哪三个部分合称为块头部?CA.表目录、行目录和行数据B.标题、表目录、空闲区C.表目录、行目录、标题D.块头部、行数据、行头部(6)数据库打开时,以下哪个表空间必须联机?AA.SYSTEM B.TEMPORARY C.ROLLBACK D.USERS (7)指定哪个表空间参与排序操作,可以提高排序效率?B A.SYSEM B.TEMPORARY C.ROLLBACK D.USERS (8)临时表空间中用于排序的段是何时创建的AA.排序操作开始的时候B.临时表空间创建的时候C.当排序操作需要内存操过1KB的时候。
《Oracle数据库应用与实践》课后习题参考答案
《Oracle数据库应用与实践》课后习题参考答案Oracle数据库应用与实践《Oracle数据库应用与实践》课后习题参考答案Oracle数据库应用与实践第1章Oracle数据库概述一.选择题1.A2.C3.B4.C5.B第2章Oracle数据库体系结构一、填空题1.数据文件日志文件控制文件2.日志缓冲区LGWR日志文件3.数据4.数据段、索引段、回退段、LOB段和临时段5.数据块6.用户进程后台进程服务器进程用户进程二、选择题CBCDDADBAACA三、简答题略。
第3章Oracle数据库常用工具一、填空题1.SQL语句SQL*Plus命令2.EDITSPOOL3.DESCRIBE4.GET5.CLEAROFF6.SAVESTART7.NUMFORMATCOLUMN二、选择题ACBDABABCD三、简答题略。
第4章表空间和数据文件管理一、填空题1.表空间数据文件Oracle数据库应用与实践2.数据字典管理本地化管理3.联机(ONLINE)读写(READWRITE)只读(READONLY)和脱机(OFFLINE)4.SYSTEM表空间、SYSAUX表空间、TEMP表空间、UNDOTBS1表空间、USERS表空间、EXAMPLE表空间。
5.ONLINEOFFLINEOFFLINEDROP6.TEMPORARYUNDOBIGFILE二、选择题ACDBCDBC三、简答题略。
第5章Oracle模式对象一、填空题1.字段级约束表约束2.NOTNULL约束UNIQUE约束PRIMARYKEY约束束3.CREATETABLECREATEANYTABLE4.UNIQUEPRIMARYKEYCHECK5.合并索引重建索引er_updatable_columns7.同义词8.nextvalcurrval二、选择题CCCBADADBD三、简答题略。
第6章SQL语言基础一.填空题2.WHERE,ORDERBY3.GROUPBY,ORDERBY4.UPDATE,DELETE,TRUNCATE5.CHR,ASCII6.TO_CHAR,字符串转,日期数据,DD-MON-YY 二.选择题1BD2.B3B4.D5.C6.B7.B8.C9.C10.DFOREIGNKEY约Oracle数据库应用与实践三.简答题略第7章SELECT高级查询一.填空题1.数据定义语言、数据操纵语言2.单行操作符、多行操作符3.子查询返回的结果4.WHERE,GROUPBY,ORDERBY5.ANY,ALL6.EXISTS,NOTEXISTS7.INNERJOIN,OUTERJOIN,CROSSJOIN8.UNION,MINUS二.选择题2.A3.BD4.D5.D6.C7.A8.B三、简答题略第8章PL/SQL编程基础一.填空题1.EXCEPTION2.:=3.CONSTANT4.打开游标,检索游标5.EXCEPTION6.RAISE7.系统异常和用户自定义异常8.显式游标和隐式游标二.选择题Oracle数据库应用与实践2.3.4.5.6.7.8.9.10.11.ACDCCDABDBDBDDABC三.简答题略四.编程题1、查找出当前用户模式下,每张表的记录数,以scott用户为例,结果应如下:DEPT (4)EMP (14)BONUS 0SALGRADE (5)其实现的代码是:declaretypetab_namesistableofvarchar2(20)indexbybinary_integer; tab_nametab_names;counnumber;strvarchar2(100);beginselecttable_namebulkcollectintotab_namefromuser_tables; foriintab_name.first..tab_stloopstr:='selectcount(*)from'||tab_name(i); executeimmediatestrintocoun;dbms_output.put_line(tab_name(i)||'..........'||coun); endloop;end;2、某cc表数据如下:c1c2--------------1西1安1的2天2气Oracle数据库应用与实践3好……转换为1西安的2天气3好要求:不能改变表结构及数据内容,仅在最后通过SELECT显示出这个查询结果代码为:createorreplacefunctionxreturnvarchar2istypet_arrayistableofnumberindexbybinary_integer;typetarrayistableofvarchar2(10)indexbybinary_integer;tat_array;tartarray;revarchar2(10);nnumber;navarchar2(10);beginselectidbulkcollectintotafrom(selectid,namefromxxorderbyid)groupbyid;stloopdbms_output.put(ta(i)||'');selectnamebulkcollectintotarfromxxwhereid=ta(i);stloopdbms_output.put(tar(i));endloop;dbms_output.put_line('');endloop;returnre;end;2、请用一条sql语句查询出scott.emp表中每个部门工资前三位的数据,显示结果如下:DEPTNOSAL1SAL2SAL3---------------------------------------------------------------105000245013002030002975110030285016001500则,该语句为:selectdeptno,max(sal)sal1,max(decode(t,2,sal))sal2,min(sal)sal3from(selectsal,deptno,tfrom(selectempno,ename,sal,row_number()over(partitionbydeptnoorderbysaldesc )t,deptnofromemp)ewheree.t<=3)groupbydeptnoOracle数据库应用与实践3、表nba记录了nba(teamVARCHAR2(10),yNUMBER(4))夺冠球队的名称及年份:TEAMY--------------------------------------------------活塞1990公牛1991公牛1992公牛1993火箭1994火箭1995公牛1996公牛1997公牛1998马刺1999湖人2000湖人2001湖人2002马刺2003活塞2004马刺2005热火2006马刺2007凯尔特人2008湖人2009湖人2010请写出一条SQL语句,查询出在此期间连续获得冠军的有哪些,其连续的年份的起止时间是多少,结果如下:TEAMBE--------------------------------------------------------------公牛19911993火箭19941995公牛19961998湖人20002002湖人20092010selectmax(nn.team)team,min(nn.y)B,max(nn.y)+1Efrom(selectn2.team,n2.yfrom(select*fromnba)n1join(select*fromnba)n2onn1.team=n2.teamwheren1.y=n2.y+1)nngroupby(nn.y-rownum)orderbyBOracle数据库应用与实践第9章存储过程、函数、触发器和包一、填空题1.2.3.4.5.6.7.过程的名称过程的使用的参数过程执行的操作CALL命令调用REPLACEOUTINOUTDROPANYPROCEDUREDML触发器INSTEADOF(替代)触发器DDL触发器FOREACHROW8.CREATEPACKAGEBODY二、选择题1.A2.C3.B4.A5.BC6.AC7.D8.D第10章Oracle安全性管理一填空题1.CREATEUSER2.WITHADMINOPTION,WITHGRANTOPTION3.系统权限,对象权限4.角色5.CREATEANYTABLE6.SETROLE二选择题1AB2D三简答题略3D4B5B6A第11章数据库备份和恢复Oracle数据库应用与实践一、填空题1.RECOVERY_CATALOG_OWNER 2.MOUNT3.FULL4.ARCHIVELOG5.不可以6.MOUNT二、选择题1.ACD2.A三简答题略3.ABCD4.BCD5.AD6.CD第12章系统性能及语句优化一、填空题1.2.3.4.*WHERE子句EXISTS子句复合索引5.MONITORINGUSAGE6.别名7.大写8.>=二、选择题1.B2.C3.A4.D5.ABCD第13章Oracle数据挖掘技术一、填空题1.数据挖掘隐含的未知的2.API-ODMJavaAPIODMDBMS_DMPL/SQLAPI Oracle数据库应用与实践3.ClusteringAssociationFeatureExtraction。
Oracle 11g数据库管理与开发基础教程课后习题及答案
第一章选择题1、Oracle数据库服务器包含的两个主要组件是(AB)A、Oracle实例B、oracle数据库C、内存结构D、后台进程2、create database 创建Oracle数据库时创建的文件包括(AC)A、数据文件B、控制文件C、日志文件D、初始化参数文件3、创建Oracle数据库时,createdatabase语句中指出了需要创建的数据文件、日志文件存储路径和名称,但没有指出需要创建的控制文件,因此创建数据库之前需要创建(D)个控制文件。
A、0B、1C、2D、任意数量4、调用shutdown命令关闭Oracle数据库后,以下(D)命令关闭的数据库处于不一致状态。
A、shutdown normalB、shutdown transactionalC、shutdown immediateD、shutdown abort5、作为普通用户,只有当数据库处于以下(C)状态下才可连接访问。
A、NUMOUNTB、MOUNTC、OPEND、CLOSE填空题1、SGA可分为以下几种主要区域:(SGA固定)、(数据库缓冲区缓存)、(重做日志缓冲区)、(共享池)等。
2、Oracle实例有多种后台进程,其中每个数据库实例上必须启动的后台进程包括(数据库写入进程)、(日志写入进程)、(检查点进程)、(进程监视进程)、(系统监视进程)等。
3、Oracle数据库的逻辑存储结构是(表空间)、(段)、(区)、(数据块)等。
4、Oracle数据库逻辑上的表空间结构与磁盘上的物理(数据)文件相关联。
5、下面连接字符串采用的是(简易连接)命名方式。
CONNECT Scott/tiger@dbs:*************编程题1.写出以下操作的SQL*PLUS命令语句:先启动Oracle实例到“已启动实例状态”,再修改Oracle实例到“数据库已装载状态”,最后修改Oracle实例到打开状态。
Startup nomoutAlter database mount;Alter database open;第二章选择题1、SQL*Plus下可以采用以下(BD)方法结束SQL语句的编辑状态,并执行它。
oracle笔记整理
1,SGA主要有那些部分,主要作用是什么共享SQL和PLSQL的执行计划和数据字典对象等信息1.data dict cache 也叫rowcache 加速SQL的解析使用过的字典就会缓存在这里再次使用这个字典就直接从内存获取这些统计的信息在v$rowcache中记录2.library cache: 加速解析减少语句重解析SQL文本,解析树和执行计划就在这里缓冲被访问的数据块.每次从磁盘向内存缓冲数据的单位由db_block_size=8192 决定,这个区域缓冲的数据保持时间也由LRU算法决定记录数据库的每个改动向量,就是记录有顺序的SQL条目,这些SQL条目包括系统的改动和UNDO的改动,用户数据的改动,将一个人的工资由800改成1000 还没提交就断电,这时数据有可能写盘下次启动时就通过回滚段中的改前镜像和日志进行恢复,如果提交了数据有可能没写盘这时断电下次启动就通过日志重做,主要是为了数据的增删改过程记录日志的提高数据安全性4large pool(9I引入)大池存放对那些复杂的程序包分析、RMAN、UGA(共享模式)、异步IO等相关的数据5 java pool(9I引入)JAVA池存放JAVA存储过程的分析信息。
6 stream pool(10g引入)流池为流复制服务提供数据缓冲缓存2:oracle系统进程主要有哪些,作用是什么在众多实例进程中有5个必须进程1.SMON 系统监视进程1.空间管理:定期合并空间(老版本才有) 定期回收临时段2.实例恢复:(服务器掉电了实例意外终止) 恢复的方法:先前滚==>后回滚==>释放资源前滚将数据库中的SQL(包括提交的和未提交的)全部重新做一遍回滚将没提交的SQL句从数据库中将老的镜像取出覆盖释放资源将前滚和回滚中使用到的资源释放2.DBWn n指的是0-9 a-j 多个写进程的区分将脏块写盘触发写的条件1.产生检查点2.脏数据缓冲区达到阀值默认10%3.扫描整个data buffer没有空闲data buffer中包含脏的和未脏的优先写脏数据列表再写未改的4.timeout超时如果DBWR没事做会被每三秒唤醒一次去巡检写不写不一定5.集群环境的ping请求触发多实例的数据写请求6.表级别的truncate或drop也会触发数据写7.修改表空间的read only8.做表空间的offline(离线)9.热备份begin backup命令3.PMON 进程监视器1.清理与实例非法断开的server_procese残留的资源非正常终止的用户进程产生的垃圾资源2.负责重启意外死掉的调度器(网络监听中使用的)3.将实例的信息注册到监听程序4.CKPT 把新的检查点写入指定位置1.调度数据写dbwN2.将新检查点写数据文件头3.将新检查点写控制文件中的数据文件头的记录5.LGWR 只有一个进程不会向数据写进程那么多因为写要求有顺序将redo log buffer里的条目写到redo文件触发写的条件mit2.redo log buffer 1/3满3.redo log buffer 日志缓冲区达到1M4.写日志优先当DBWR要写脏数据时,要检查脏数据对应的日志是否写盘,如果日志还没写,会优先写日志5.3秒写一次简答题1解释冷备份和热备份的不同点以及各自的优点解答:热备份针对归档模式的数据库,在数据库仍旧处于工作状态时进行备份。
《Oracle数据库应用与开发》教材课后习题参考答案
《Oracle数据库应用与开发》教材课后习题参考答案1.8习题:1.(1)关系型数据库管理系统,简称RDBMSo是在E.F.Codd博士发表的论文《大规模共享数据银行的关系型模型》基础上设计出来的。
它通过数据、关系和对数据的约束三者组成的数据模型来存放和管理数据。
RDBMS是SQL的基础,同样也是所有现代数据库系统的基础。
(2)在关系型数据库中,标准二维表是基本的数据存储单元,里边存储了实体的属性和实体间的关系。
2.关系型数据库中,表与表之间包括的三种关系是:一对一、一对多和多对多。
(1)一对一:有两个表,表A和表B。
表A中的一条记录在表B 中有一条记录与之对应。
反过来,表B中的一条记录在表A中也仅有一条记录与之对应。
(2)一对多:有两个表,表A和表B。
表A中的一条记录在表B 中有多条记录与之对应。
反过来,表B中的一条记录在表A中仅有一条记录与之对应。
(3)多对多:有两个表,表A和表B。
表A中的一条记录在表B 中有多条记录与之对应。
反过来,表B中的一条记录在表A中也有多条记录与之对应。
3.Oracle 10g提供了四个版本,分别是:Oracle 10g标准版1、Oracle 10g 标准版、Oracle 20g 企业版、Oracle 20g 个人版。
4.(1)客户机/服务器结构:简称C/S结构,是软件系统的一种体系结构。
数据库和数据库管理系统运行在服务器端,各种Oracle管理工具运行在客户机上,二者通过SQL*NET进行通信。
(2)浏览器/服务器结构:简称B/S结构,是随着Web技术兴起后的一种新型软件系统结构。
它通常分为三层:数据库服务器,用来存储和管理数据库;应用程序服务器,与数据库服务器进行交互完成各种数据处理工作; 客户端浏览器,与应用程序服务器进行交互,负责提交数据处理请求并获得和显示结果。
5.(1) SYS:该用户被默认创建并授予DBA角色,它是Oracle数据库中权限最大的管理员账号。
ORACLE数据库常见题集
ORACLE数据库常见题集ORACLE数据库常见题集1. 以下关于数据的逻辑结构的叙述中,哪一条是不正确的?(C )A.数据的逻辑结构是数据间关系的描述B.数据的逻辑结构抽象地反映数据元素间的逻辑关系C.数据的逻辑结构具体地反映数据在计算机中的存储方式D.数据的逻辑结构分为线性结构和非线性结构2. 以下关于链式存储结构的叙述中,哪一条是不正确的?(C )A.结点除自身信息外还包括指针域,因此存储密度小于顺序存储结构B.逻辑上相邻的结点物理上不必邻接C.可以通过计算直接确定第i个结点的存储地址D.插入、删除运算操作方便,不必移动结点3. 下列关于文件索引结构的叙述中,哪一个是不正确的?(A )A.采用索引结构,逻辑上连续的文件存放在连续的物理块中B.系统为每个文件建立一张索引表C.索引结构的优点是访问速度快,文件长度可以动态变化D.索引结构的缺点是存储开销大4. 下列关于数据库数据模型的说法中,哪一个是不正确的?(A )A.任何一张二维表都表示一个关系B.层次模型的数据结构是有向树结构C.在网状模型中,一个子结点可以有多个父结点D.在面向对象模型中每一个对象都有一个惟一的标识5. 下列关于数据库三级模式结构的说法中,哪一个是不正确的?(D )A.数据库三级模式结构由内模式、模式和外模式组成B.DBMS在数据库三级模式之间提供外模式/模式映象和模式/内模式映像C.外模式/模式映象实现数据的逻辑独立性D.一个数据库可以有多个模式6. 如果在一个关系中,存在某个属性(或属性组),虽然不是该关系的主码或只是主码的一部分,但却是另一个关系的主码时,称该属性(或属性组)为这个关系的(C )A.候选码B.主码C.外码D.连接码7. 下列关于关系数据库视图的说法中,哪些是正确的?(B )Ⅰ. 视图是关系数据库三级模式中的内模式。
Ⅱ. 视图能够对机密数据库提供一定的安全保护。
Ⅲ. 视图对重构数据库提供了一定程度的逻辑独立性。
Oracle数据库管理习题及答案.docx
.1.6 习题一.填空题1、关系模型提供了 3 类完整性规则,分别是_______、 _______、 _______。
参考答案:实体完整性规则、参照完整性规则、用户定义的完整性规则2、 RDBMS 由两部分组成,即_______、 _______两部分。
答案:数据库系统内核、数据字典3、关系数据库模型支持三种类型的表关联关系:_______、 _______、 _______。
答案:一对一、一对多以及多对多4、数据模型的种类有很多,例如_______、 _______、 _______和 _______等。
目前理论最成熟、使用最普及的是_______。
答案:层次模型、网状模型、关系数据模型、面向对象模型。
关系数据模型二、选择题1、 Oracle 11g 版本号中字母“g”的含义是()A .产品类型的“代”( generation)B.网格 (gridding)C.集成( integration )D.无含义答案: A2、设计性能较优的关系模式称为规范化,规范化主要的理论依据是()A .关系规范化理论B.关系运算理论C.关系代数理论D.数理逻辑答案: A3、消除了部分函数依赖的1NF 的关系模式必定是()A . 1NFB . 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数据库习题
ORACLE数据库习题1.ORACLE数据库物理结构包括以下三种文件,以下不属于的是()A.系统文件B.日志文件C.数据文件D.控制文件2.下列哪个命令是用于ORACLE中数据导出的 ( )A.exp B.imp C.input D.output3.()是用于控制数据访问的语言。
A.DML B.DDL C.DCL D.DLL4.NULL表示什么()A.0 B.空格 C.值 D.没有值5.下面四个语句中哪一个是正确的?()A.SELECT * , ENAME FROM EMP;B. DELETE * FROM EMP;C. SELECT DISTINCT EMPNO ,HIREDATE FROM EMP;D.SELECT ENAME|SAL AS “name” FROM EMP ;6.假定有一张表用户表users,其中一身份证字段ID_card。
为了维护数据的完整性,在设计数据库时,最好对ID_card字段添加约束,请问应该添加什么约束()A. primary key B.check C.default D.not null7.下面哪一个like命令会返回名字象HOTKA的行?()A.where ename like ‘_HOT%'B.where ename like ‘H_T%'C.where ename like ‘%TKA_'D.where ename like ‘%TOK%'8.()操作符只返回由第一个查询选定但是没有被第二个查询选定的行。
A.UNIONB.UNION ALLC.INTERSECTD.MINUS9.EMPLOYEES表的结构如下:A.表中没有行。
B.有一个姓名为James的员工。
C.不能多次回滚到相同的保存点。
D. 由于已经删除了员工ID180,因此最后一次更新未更新任何行。
10.以下运算结果不为空值的是()A.12+NULLB.60*NULLC.NULL‖’NULL’D.12/(60+NULL)11.若当前日期为’25-5月-06’,以下()表达式能计算出5个月后那一天所在月份的最后一天的日期。
ORACLE完整笔记及JAVA习题
29.30.能从循环语句中跳出的是(ACD)A.returnB.forC.breakD.continue31.下列那两个语句能够创建一个inputstream输入流并且打开文件file.txt准备读取(B)A.FileInputStream in = new FileReader(new File(”File.txt”));B. FileInputStream in = new FileInputStream(new File(”File.txt”));C. InputStream in = new FileReader(”File.txt”);D. InputStream in = new FileInputStream(”File.txt”);E. InputStream in = new InputStreamFileReader(”File.txt”,”read”);32.下列哪些方法可以定义新线程类(AB)A.继承thread类。
B.实现runnable接口。
C.在类中添加一个run()方法。
D.创建一个thread实例。
(线程部分创建的内容)33.想要构造arraylist的一个实例,这个类继承了list接口,一下正确的是(C)A. List mylist = new List();B. ArrayList mylist = new Object();C. List mylist = new ArrayList();D. ArrayList mylist = new ArrayList();(D和C都是可以的,但是D一般不用,因为,用父类List可以方便代码复用,团队开发,和转化为组件)34.下列关键字可以修饰构造函数的是(ABCD)A.protectedB .publicC. privateD. default(特征修饰符应该都不行:static,final,abstract,synchronize等)35.关于集合描述错误的是(BCD)A.Map是独立接口,没有继承collection接口,queue继承map接口。
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. 将客户表中地址为"北京市"的客户地址改为"上海市"。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《大型数据库设计与实现》复习题(2014.6)1.画图说明Oracle系统的体系结构。
• Oracle 服务器:Oracle 服务器中包含多种文件结构、进程结构和内存结构;但是,处理SQL 语句时,并非所有这些结构都会用到。
• Oracle 例程:Oracle 例程是后台进程和内存结构的组合。
• Oracle 数据库:Oracle 数据库包含操作系统文件(也称为数据库文件),这些文件为数据库信息提供了实际的物理存储。
• 其它关键文件:非数据库文件用于配置例程、验证特权用户以及在磁盘出现故障时恢复数据库。
• 用户进程和服务器进程:执行SQL 语句时,用户进程和服务器进程是其中涉及的主要进程;但是,其它进程也会有助于服务器完成SQL 语句的处理。
• 其它进程:还有很多供其它选件使用的其它进程,例如,高级排队(Advanced Queuing)、实时应用集群(Real Application Clusters)、共享服务器(Shared Server) 和高级复制(Advanced Replication) 等。
2.分析表空间两种不同的空间管理方式。
本地管理的表空间:在表空间内通过位图管理区。
位图中的每个位对应于一个块或一组块。
分配了某个区或释放了某个区可重新使用时,Oracle 服务器更改位图值以显示块的新状态。
从Oracle9i 开始,在本地管理已成为缺省设置。
• 减少了对数据字典表的争用• 分配或回收空间时不生成还原数据• 无需合并字典管理的表空间:由数据字典管理区。
Oracle 服务器将在分配或回收区时更新数据字典中对应的表。
• 在数据字典中管理区• 存储在表空间中的每个段都可以有不同的存储子句• 需要合并3.命令shutdown有几种方式?请说明各有哪些不同,分析数据库服务器如何解决突然掉电?关闭模式:• A = ABORT• I = IMMEDIATE• T = TRANSACTIONAL• N = NORMAL正常关闭:“正常” 是缺省的关闭模式。
正常的数据库关闭在下列情况下进行:• 未建立新连接。
• Oracle 服务器等待所有用户断开后才完成关闭。
• 数据库和重做缓冲区中的内容已写入磁盘。
• 后台进程已终止,SGA 已从内存中删除。
• Oracle 在关闭例程前将关闭并卸装数据库。
• 下一次启动将不要求例程恢复。
事务处理关闭:事务处理关闭防止客户机丢失工作。
事务处理数据库关闭在下列情况下进行:• 没有客户机可以在此特定例程上启动新事务。
• 当客户机结束正在进行的事务时,断开客户机。
• 当所有事务都已完成后立即关闭。
• 下一次启动将不要求例程恢复。
立即关闭:立即关闭数据库在下列情况下进行:• 由Oracle 处理的当前SQL 语句未完成。
• Oracle 服务器不等待当前连接到数据库的用户断开。
• Oracle 回退活动的事务并断开所有连接的用户。
• Oracle 在关闭例程前将关闭并卸装数据库。
• 下一次启动将不要求例程恢复。
关闭中止:如果“正常” 和“立即关闭” 选项不起作用,可以中止当前数据库例程。
中止例程在下列情况下进行:• Oracle 服务器所处理的当前SQL 语句被立即终止。
• Oracle 不等待当前连接数据库的用户断开。
• 数据库和重做缓冲区中的内容不写入磁盘。
• 未提交的事务不回退。
• 在不关闭文件的情况下例程被终止。
• 数据库不关闭或被卸装。
• 下次启动要求恢复例程,该操作将自动进行。
数据库服务器解决突然掉电:在关闭过程中:• 发生修改的缓冲区内容不写入数据文件• 不回退未提交的更改在启动过程中:• 使用重做日志重新应用更改• 使用撤消段回退未提交的更改• 释放资源4.试写出Oracle系统对下述语句的执行过程:UPDATE account SET balance=balance-2000 WHERE account_number=‘111222333;•语法分析:–搜索同一语句–检查语法、对象名和权限–锁定语法分析过程中使用的对象–创建和存储执行计划• 绑定:获取变量值• 执行:–如果数据库缓冲区高速缓存中不存在某些数据块和还原块,服务器进程就从数据文件将它们读入数据库缓冲区高速缓存。
–服务器进程锁定要进行修改的行。
还原块用于存储数据的前像,以便在需要时回退DML 语句。
–数据块记录数据的新值。
–服务器进程将数据的前像记录到回退块中,并更新数据块。
这两种更改都是在数据库缓冲区高速缓存中进行的。
数据库缓冲区高速缓存中所有已更改的块都标记为灰数据缓冲区,即与磁盘中相应的块不同的缓冲区。
5.创建数据库的前提条件是什么?有几种创建方式?如何手动创建?创建的前提条件:• 已授权的帐户,通过以下方式之一验证:–操作系统–口令文件• 有足够的内存可用于启动例程• 有足够的磁盘空间可用于计划要创建的数据库创建方式:• Oracle Database Configuration Assistant• CREATE DATABASE 命令手动创建数据库:• 为例程和数据库选择唯一的名称。
• 选择一个数据库字符集。
• 设置操作系统变量。
• 创建初始化参数文件。
• 在NOMOUNT 阶段启动该例程。
• 创建并执行CREATE DATABASE 命令。
• 打开数据库。
• 运行脚本以生成数据字典并完成创建后的步骤。
• 根据需要创建其它表空间。
6.简要回答数据字典和控制文件分别包含哪些内容。
数据字典包含以下内容:• 数据库内所有方案对象的定义,这些对象包括表、视图、索引、簇、同义词、序列、过程、函数、程序包、触发器等等• 已为方案对象分配的空间量以及它们当前使用的空间量• 列的缺省值• 完整性约束信息• Oracle 用户的名称• 已授予每个用户的权限和角色• 审计信息,如有哪些人访问或更新了各种方案对象控制文件中包含以下内容:• 数据库名称和标识符• 创建数据库的时间戳• 表空间的名称• 数据文件和重做日志文件的名称和位置• 当前重做日志的序列号• 检查点信息• 还原段的开始和结尾• 重做日志归档信息• 备份信息7.如何通过监控诊断文件管理实例?诊断文件是获取有关数据库活动的信息的一种方法。
同时也是管理例程的有用工具。
诊断文件有几种类型。
创建的诊断文件的类型取决于出现的问题或需要传播的信息。
• alertSID.log 文件:记录数据库日常操作的信息• 后台跟踪文件:记录SMON、PMON、DBWn 和其它后台进程失败时产生的重要信息• 用户跟踪文件:记录出现严重用户错误或用户强制执行跟踪文件时产生的重要信息8.利用DDL语句创建表employee,共有4列:eid(占3个字符,建立一个延迟的主键约束),ename(占8个字符,非空),deptid(占3个字符),salary(整型,大于0),现有索引表空间indx,数据表空间tbs。
根据以上要求完成定义和约束,并合理安排表空间。
CREATE TABLE hr.employees(eid VARCHAR2(3),ename VARCHAR2(8) NOT NULL,deptid VARCHAR2(3),salary NUMBER,CONSTRAINT "CHK_SALARY" CHECK (SALARY > 0) ENABLE,CONSTRAINT "PK_EID" PRIMARY KEY ("EID") DEFERRABLE USING INDEX TABLESPACE "INDX" ENABLE)STORAGE(INITIAL 200K NEXT 200KPCTINCREASE 0 MINEXTENTS 1 MAXEXTENTS 5)TABLESPACE tbs;9.完成以下SQL语句:已知CAP数据库中表和列的定义如下:CUSTOMERS:存放顾客信息的表cid:顾客编号cname:顾客姓名city:顾客所在的城市discnt:每个顾客可能会有的折扣AGENTS:存放代理商信息的表aid:代理商编号aname:代理商的名称city:代理商所在的城市percent:每笔交易代理所能获得佣金百分比PRODUCTS:存放商品信息的表pid:商品编号pname:商品的名称city:商品库存所在的城市quantity:目前可销售的商品库存数量price:每单位商品的批发价ORDERS:存放订单信息的表oid:订单编号month:订单月份cid:购买商品的顾客编号aid:代理商编号pid:所订购的商品编号qty:订购的商品数量dollars:商品的总价⑴找出所有顾客、代理商和商品都在同一个城市的三元组(cid, aid, pid)。
⑵找出折扣率最大和最小的顾客的cid值。
⑶找出通过代理商a03而不通过代理a06订购的商品的pid值。
⑷取出名字是以字母N开头的代理商的aid和aname值,并且这些代理没有销售过任何在城市Newark生产的商品。
⑸求出所有商品的订购情况(pname, qty)。
⑹完成插入操作:顾客Allied通过代理商Smith购买了名称为“brush”的产品,订单号为:1011,商品数量:1000。
⑺如果顾客的折扣大于10,将其折扣在原有基础上再增加5,否则增加3。
⑻找出哪些顾客(名字)同时订购了产品p01和p02。
(1).select CUSTOMERS.cid, AGENTS.aid, PRODUCTS .pidfrom CUSTOMERS ,AGENTS ,PRODUCTSwhere CUSTOMERS.city=AGENTS.city and AGENTS.city=PRODUCTS.city(2)select cidfrom CUSTOMERSwhere discnt = (select (max(discnt)) from CUSTOMERS) ORdiscnt = (select (min(discnt)) from CUSTOMERS)(3)select pidFrom PRODUCTSWhere aid IN(select aidFrom PRODUCTSWhere aid = ‘A03’ AND aid != ‘A06’)(4)Select aid,anameFrom AGENTSWhere aname LIKE ‘N%’AND aid IN(select aidFrom PRODUCTSWhere city != ‘Newark’)(5)(6)。