Oracle考试题
- 格式:doc
- 大小:62.50 KB
- 文档页数:9
1.下列不属于ORACLE的逻辑结构的是(C)A.区B.段C.数据文件D.表空间2. 下面哪个用户不是ORACLE缺省安装后就存在的用户(A)A . SYSDBAB. SYSTEMC. SCOTTD. SYS3.下面哪个操作会导致用户连接到ORACLE数据库,但不能创建表(A)A.授予了CONNECT的角色,但没有授予RESOURCE的角色B.没有授予用户系统管理员的角色C.数据库实例没有启动D.数据库监听没有启动4.函数通常用来计算累计排名,移动平均数和报表聚合。
(B)A . 汇总B. 分析C 分组D 单行5.带有(B)字句的SELECT语句可以在表的一行或多行放置排他锁。
A . FOR INSERTB. FOR UPDATEC. FOR DELETED. FOR REFRESH6.在Oracle中,你以SYSDBA登录,CUSTOMER表位于Mary用户方案中,下面哪条语句为数据库中的所有用户创建CUSTOMER表的同义词(B)。
CREATE PUBLIC SYNONYM cust ON mary.customer;CREATE PUBLIC SYNONYM cust FOR mary.customer;CREATE SYNONYM cust ON mary.customer FOR PUBLIC;不能创建CUSTOMER的公用同义词。
7. 在Oracle中,当FETCH语句从游标获得数据时,下面叙述正确的是(C)。
A.游标打开B.游标关闭C.当前记录的数据加载到变量中D.创建变量保存当前记录的数据8. 在Oracle中,下面关于函数描述正确的是(AD)。
A.SYSDATE函数返回Oracle服务器的日期和时间B.ROUND数字函数按四舍五入原则返回指定十进制数最靠近的整数C.ADD_MONTHS日期函数返回指定两个月份天数的和D.SUBSTR函数从字符串指定的位置返回指定长度的子串9. 阅读下面的PL/SQL程序块:BEGININSERT INTO employee(salary,last_name,first_name) VALUES(35000,’Wang’,'Fred’);SAVEPOINT save_a;INSERT INTO employee(salary,last_name,first_name) VALUES(40000,’Woo’,'David’);SAVEPOINT save_b;DELETE FROM employee WHERE dept_no=10; SAVEPOINT save_c;INSERT INTO employee(salary,last_name,first_name) VALUES(25000,’Lee’,'Bert’);ROLLBACK TO SAVEPOINT save_c;INSERT INTO employee(salary,last_name,first_name) VALUES(32000,’Chung’,'Mike’);ROLLBACK TO SAVEPOINT save_b;COMMIT;END;运行上面的程序,哪两个更改永久保存到数据库(CD)。
oracle 笔试题IntroductionOracle Corporation is a multinational technology corporation that specializes in developing and marketing computer hardware systems and enterprise software products. As part of their recruitment process, Oracle often conducts written tests to assess candidates' skills and knowledge in various areas. This article aims to provide a collection of sample Oracle written test questions, along with detailed explanations and solutions.1. Database Management SystemsQuestion 1:What is a database management system (DBMS) and what are its advantages?Answer:A DBMS is a software system that allows users to define, create, and manage databases. Its main advantages include:- Data independence: DBMS separates the physical and logical views of data, allowing changes in one to be made without affecting the other.- Data security: DBMS provides mechanisms for user authentication, authorization, and data encryption to ensure data confidentiality and integrity.- Data consistency: DBMS enforces data integrity constraints, preventing inconsistent or invalid data from being stored.- Data sharing: DBMS enables multiple users to access and manipulate data concurrently, ensuring data consistency through concurrency control mechanisms.Question 2:What are the differences between a primary key and a unique key in Oracle?Answer:- Primary key: A primary key is a column or a combination of columns that uniquely identifies each record in a table. It enforces entity integrity and ensures that no duplicate or null values are allowed. Each table can have only one primary key.- Unique key: A unique key also uniquely identifies each record in a table but allows null values. Unlike a primary key, a table can have multiple unique keys. Unique keys are used to enforce data integrity and to ensure that each record has a unique value in a specific column or combination of columns.2. SQLQuestion 1:What is SQL and what are its main components?Answer:SQL (Structured Query Language) is a standardized programming language used for managing relational databases. Its main components include:- Data Definition Language (DDL): Used to define and modify the structure of database objects, such as tables, views, and indexes.- Data Manipulation Language (DML): Used to insert, update, delete, and retrieve data from a database.- Data Control Language (DCL): Used to grant or revoke privileges on database objects, such as granting users the ability to access or manipulate data.- Transaction Control Language (TCL): Used to manage transactions in a database, providing mechanisms to ensure data consistency and integrity.Question 2:What is the difference between the WHERE and HAVING clauses in a SQL query?Answer:- WHERE clause: The WHERE clause is used to filter rows based on a specified condition. It is applied before the GROUP BY clause in a query and restricts which rows are included in the result set.- HAVING clause: The HAVING clause is used to filter rows based on a specified condition after the GROUP BY clause is applied. It is used to filter the result set based on aggregated values, such as the sum or count of a column.3. PL/SQLQuestion 1:What is PL/SQL and what are its advantages?Answer:PL/SQL (Procedural Language/Structured Query Language) is Oracle's proprietary programming language used for writing stored procedures, functions, triggers, and anonymous blocks. Its main advantages include:- Procedural capabilities: PL/SQL supports procedural programming constructs, such as loops, conditional statements, and exception handling, allowing developers to write complex business logic.- Tight integration with SQL: PL/SQL allows embedding SQL statements directly within procedural code, providing efficient data manipulation capabilities.- Performance optimization: PL/SQL can be compiled and stored in the database, reducing network overhead and improving overall performance.- Security and access control: PL/SQL supports fine-grained access control mechanisms, allowing developers to define and enforce security policies at the database level.Question 2:What are the differences between a stored procedure and a stored function in PL/SQL?Answer:- Stored procedure: A stored procedure is a named PL/SQL block that can take input parameters and may or may not return a value. It is primarilyused to encapsulate and execute a sequence of SQL and PL/SQL statements, often providing reusable and modular code.- Stored function: A stored function is similar to a stored procedure but always returns a value. It can be used in SQL statements like a built-in function, allowing for complex calculations and transformations within a query. Stored functions can also be used in PL/SQL code.ConclusionThis article provided a collection of sample Oracle written test questions, covering topics such as database management systems, SQL, and PL/SQL. Understanding these topics is crucial for success in Oracle's recruitment process. By familiarizing yourself with these questions and their solutions, you will be better prepared to demonstrate your knowledge and skills in these areas. Good luck with your Oracle exam!。
第1篇1. 请简述Oracle数据库的体系结构,并说明各层的作用。
2. 请解释什么是Oracle实例?实例与数据库之间的关系是什么?3. 请简述Oracle数据库的存储结构,包括数据文件、控制文件、日志文件等。
4. 请说明Oracle数据库的内存结构,包括SGA、PGA等。
5. 请解释Oracle数据库的备份策略,包括全备份、增量备份、差异备份等。
6. 请说明Oracle数据库的恢复策略,包括不完全恢复、完全恢复等。
7. 请解释Oracle数据库的事务管理,包括事务的ACID特性。
8. 请说明Oracle数据库的锁机制,包括共享锁、排他锁等。
9. 请解释Oracle数据库的并发控制,包括多版本并发控制(MVCC)。
10. 请说明Oracle数据库的安全机制,包括角色、权限、用户等。
二、SQL语言1. 请简述SQL语言的组成,包括数据定义语言(DDL)、数据操纵语言(DML)、数据控制语言(DCL)等。
2. 请说明如何创建一个简单的表,包括表结构、字段类型、约束等。
3. 请编写一个查询语句,查询某个表中所有年龄大于30岁的记录。
4. 请编写一个更新语句,将某个表中年龄大于40岁的记录的年龄加1。
5. 请编写一个删除语句,删除某个表中年龄小于20岁的记录。
6. 请编写一个插入语句,插入一条记录到某个表中。
7. 请说明如何使用SQL语句实现分页查询。
8. 请说明如何使用SQL语句实现多表查询。
9. 请说明如何使用SQL语句实现子查询。
10. 请说明如何使用SQL语句实现联合查询。
三、Oracle高级特性1. 请解释什么是视图?如何创建视图?2. 请解释什么是索引?有哪些常见的索引类型?3. 请解释什么是触发器?如何创建触发器?4. 请解释什么是存储过程?如何创建存储过程?5. 请解释什么是函数?如何创建函数?6. 请解释什么是包?如何创建包?7. 请解释什么是序列?如何创建序列?8. 请解释什么是同义词?如何创建同义词?9. 请解释什么是物化视图?如何创建物化视图?10. 请解释什么是分区表?如何创建分区表?四、Oracle性能优化1. 请说明如何查看Oracle数据库的性能统计信息。
oracle期末考试卷Oracle期末考试卷一、选择题(每题2分,共20分)1. Oracle数据库的默认端口号是什么?A. 1521B. 3306C. 1433D. 54322. 在Oracle数据库中,以下哪个命令用于查看当前数据库的所有用户?A. SELECT USER FROM DUAL;B. SELECT DISTINCT USERNAME FROM DBA_USERS;C. SELECT * FROM ALL_USERS;D. SELECT * FROM USER_USERS;3. 以下哪个不是Oracle数据库的体系结构组件?A. 数据库B. 实例C. 表空间D. 索引4. Oracle数据库的哪个组件负责管理数据的存储和检索?A. SQLB. PL/SQLC. RDBMSD. DBMS5. 在Oracle数据库中,以下哪个命令用于创建一个新的表?A. CREATE TABLE;B. CREATE DATABASE;C. CREATE INDEX;D. CREATE VIEW;6. Oracle数据库中,哪个命令用于删除一个表?A. DROP TABLE;B. REMOVE TABLE;C. DELETE TABLE;D. ERASE TABLE;7. Oracle数据库中,哪个命令用于查看表的结构?A. DESCRIBE table_name;B. EXPLAIN table_name;C. SHOW table_name;D. SELECT table_name;8. 在Oracle数据库中,以下哪个命令用于添加新的列到一个已存在的表?A. ADD COLUMN column_name column_type;B. INSERT COLUMN column_name column_type;C. CREATE COLUMN column_name column_type;D. APPEND COLUMN column_name column_type;9. Oracle数据库中,哪个命令用于更新表中的记录?A. UPDATE table_name SET column_name = new_value WHERE condition;B. MODIFY table_name SET column_name = new_value WHERE condition;C. CHANGE table_name SET column_name = new_value WHERE condition;D. ALTER table_name SET column_name = new_value WHERE condition;10. 在Oracle数据库中,以下哪个命令用于删除表中的记录?A. ERASE FROM table_name WHERE condition;B. REMOVE FROM table_name WHERE condition;C. DELETE FROM table_name WHERE condition;D. DROP FROM table_name WHERE condition;二、简答题(每题5分,共30分)1. 简述Oracle数据库的体系结构。
oracle期末考试题及答案一、选择题(每题2分,共20分)1. Oracle数据库中的用户和模式是什么关系?A. 完全相同B. 完全不同C. 模式是用户的集合D. 用户是模式的集合答案:C2. 在Oracle数据库中,以下哪个命令用于查看当前用户?A. SELECT USER FROM DUAL;B. SELECT CURRENT_USER FROM DUAL;C. SELECT SESSION_USER FROM DUAL;D. SELECT SYSTEM_USER FROM DUAL;答案:A3. Oracle数据库中的哪个参数用于设置数据库的字符集?A. DB_CHARSETB. NLS_CHARACTERSETC. DB_LANGUAGED. NLS_LANGUAGE答案:B4. 在Oracle数据库中,以下哪个不是SQL语句?A. SELECTB. UPDATEC. DELETED. PRINT答案:D5. Oracle数据库中的触发器可以在哪些时刻执行?A. 数据插入前B. 数据更新前C. 数据删除后D. 数据查询时答案:ABC二、填空题(每空2分,共20分)1. Oracle数据库的默认表空间名称是 _ 。
答案:SYSTEM2. 在Oracle数据库中,用来查看当前数据库版本信息的命令是 _ 。
答案:SELECT * FROM V$VERSION;3. Oracle数据库中,用来创建索引的SQL语句是 _ 。
答案:CREATE INDEX;4. 在Oracle数据库中,存储过程和函数的区别在于存储过程可以有_ ,而函数不能。
答案:OUT参数5. Oracle数据库中,用于实现数据完整性的约束包括主键约束、外键约束、 _ 和CHECK约束。
答案:UNIQUE约束三、简答题(每题10分,共30分)1. 解释Oracle数据库中的视图是什么,并说明其优点。
答案:视图是Oracle数据库中的一种虚拟表,它是基于一个或多个表的查询结果。
Oracle 考试题一:单选题(每题1.5分,共60分)1.学生信息表StudentInfo如下所示:学号姓名所在省市0001 李辉北京0002 张明上海0003 王小玉北京0004 李淑华湖南0005 赵静上海┆┆┆查询所有学生来自于哪几个省市使用的语句为()。
(选择一项)A) Select unique 所在省市 from StudentInfoB) Select 所在省市 from StudentInfoC) Select only 所在省市 from StudentInfoD) Select distinct 所在省市 from StudentInfo2. 公司需要管理员工档案,你创建了2个表:员工表employees和部门表departments。
以下是两表的部分内容。
employees编号姓名年龄部门编号1 王涛 25 12 张力 24 13 李明 30 24 高嘉 24 3Departments编号部门名称1 人力资源部2 技术部3 销售部下列那列适合作为外键()。
(选择一项)A) Employees中的编号B) Employees中的部门编号C) departments中的编号D) 以上都适合3. 你使用以下T-SQL语句创建了一个视图v_emp和一个表students,create view v_emp as select * from emp where deptno=10;create table students(id number(5),stuname varchar2(10))请问这两个语句是:()。
(选择一项)A) DDL(数据定义语言)B) DML(数据操纵语言)C) DCL(数据控制语言)D) DQL (数据查询语言)4.当SQL登录帐户被授权为数据库用户后,要查询数据库中的表,还需要对其赋予select 权限,实现赋权的T-SQL语言属于()。
(选择一项)A) DDL(数据定义语言)B) DML(数据操纵语言)C) DCL(数据控制语言)D) DQL (数据查询语言)5. 你是公司的数据库管理员,数据库benet中有个员工表employees,该表中有职务列。
Oracle应用_第1题. 由于软硬件问题导致的读写数据库文件失败,属于()故障A. A 实例B. B 语句C. C 用户进程D. D 介质你选择的答案为:正确答案为:D第2题. 游标有哪几种类型A. 静态游标、动态游标B. 隐式游标、显示游标C. 变量游标、常量游标D. 参数游标、ref 游标你选择的答案为:正确答案为:B第3题. 在Oracle中,下列()语句不能用于控制游标。
A. A. OpenB. B. CreateC. C. FetchD. D. Close你选择的答案为:正确答案为:B第4题. 哪中类型的约束只能定义在列级A. CHECKB. UNIQUEC. NOT NULLD. PRIMART KEY你选择的答案为:正确答案为:C第5题. 用SQLPLUS的_____命令可以查看表的结构信息,包括列的名称和数据类型A. DESCRIPTIONB. DESCC. SHOW TABLED. SHOW USER你选择的答案为:正确答案为:B第6题. 在Oracle中有表"cd",它包含属性"cdcode","category"和"cdname",要查询category 取值为"CLASSIC"或"ROCK"的行,应采用语句()。
A. A. SELECT * FROM cd WHERE category IN ('CLASEIC','ROCK');B. B. SELECT * FROM cd WHERE category BETWEEN 'CLASSIC' AND 'ROCK';C. C. SELECT * FROM cd WHERE category='CLASSIC' AND category='ROCK';D. D. SELECT * FROM cd WHERE category='CLASSIC' OR category='ROCK';你选择的答案为:正确答案为:undefined第7题. 在Oracle中,语句()将ORDER_DA TE日期值'2000年3月18日'显示为‘2000年1月1日’。
oracle 数据库期末考试试题及答案A1、以下()内存区不属于SGA 。
A. PGA B .日志缓冲区 C .数据缓冲区 D .共享池 D2、( )模式存储数据库中数据字典的表和视图。
A . DBAB .SCOTTC .SYSTEMD .SYSA . HRB .SCOTTC .SYSTEMD . SYSA4、( )服务监听并按受来自客户端应用程序的连接请求。
OracleHOME_NAMETNSListenerC3、在Oracle 中创建用户时, 若未提及 DEFAULT TABLESPACE关键字,则 Oracle 就将( )表空间分配给用户作为默认表空间。
A . B . OracleServiceSID C . OracleHOME_NAMEAgent D . OracleHOME_NAMEHTTPServerB5、( )函数通常用来计算累计排名、移动平均数和报表聚合等。
A .汇总B .分析C .分组D .单行B6、( )SQL 语句将为计算列 SAL*12 生成别名 Annual Salary A . SELECT ename,sal*12 ‘Annual Salary 'FROM emp; B . SELECT ename,sal*12 “Annual Salary ”FROM emp; C . SELECT ename,sal*12 AS Annual Salary FROM emp;D . SELECT ename,sal*12 AS INITCAP( “Annual Salary ”)FROMA13、带有错误的视图可使用( )选项来创建。
emp;B7、锁用于提供()。
A .改进的性能B .数据的完整性和一致性C .可用性和易于维护D .用户安全C8、 ( )锁用于锁定表,允许其他用户查询表中的行和锁定表,但不允许插入、更新和删除行。
A .行共享B .行排他C .共享D .排他他锁。
1.数据库的体系结构,包括物理储存结构、逻辑存储结构、内存结构和实例结构。
2.一个数据库含一个数据库和一个实例。
3.强制日志转换:ALTER SYSTEM SWITCH LOGFILE4.数据库的运行模式有两种:归档模式;非归档模式。
5.Oracle具有两种操作模式:专用服务器模式和共享服务器操作模式。
5.数据库的基本参数信息,主要包括数据库名、控制文件所在路径、进程等。
7.盘区是由一系列物理上连续的数据块构成的存储结构,它也是磁盘空间分配的最小单元。
8.内存区域和后台进程合称为一个oracle实例。
9.oracle实例有两种类型:单进程实例和多进程实例。
10.在多进程系统中,进程分为用户进程、服务进程和后台进程。
11.数据字典是oracle数据库的核心组件,有一系列只读的基础表和视图表组成的。
12.并发控制是指要用正确的方式实现事务的并发操作,避免造成数据的不一致性,也就是事物的一致性。
13.锁是用来控制共享资源并发访问的一种机制。
14.oracle中的锁分成3类:DDL锁、DML锁和内部锁。
15.RS锁是限制最少的锁定模式,而X锁则是限制最多的锁定模式。
16.TM锁类型共有5中锁模式:S锁、X锁、RS锁、SRX锁。
17.数据库中锁的粒度可分为4个级别:数据库级、表级、行级和列级。
18.DML触发器包括:语句级触发器、行级触发器。
19.数据块是Oracle用来管理存储空间的最基本单元,也是最先的逻辑存储单元。
20.数据块的组成部分有块头部、表目录、行目录、空闲空间、行空间。
21.表空间是在Oracle中用户可以使用的最大的逻辑存储结构,用户在数据库中建立的所有内容都被存储在表空间中。
22、数据缓冲区中的缓冲块分为三类:脏缓存块、空闲缓存块、命中缓存块。
23、Oracle数据库的内存结构可以分为系统全局区(SGA)、程序全局区(PGA)、排序区、大池及Java池。
24、TEMP用于存储临时表等信息。
UNDO用于保存回滚段(ROLLBACK)。
25、用户数据的排序有两个区域:一个是内存排序区,另一个是磁盘临时段。
3、Oracle数据库中,SGA由数据库缓冲区,重做日志缓冲区,共享池组成。
2.用户对数据库的操作如果产生日志信息、则该日志信息首先被存储在日志缓冲区中,随后由LGWR 进程保存到日志文件。
3.一个表空间物理上对应一个或多个数据文件。
6.在多进程Oracle 实例系统中,进程分为用户进程、后台进程和服务器进程。
当一个用户运行应用程序,系统将为用户运行的应用程序建立一个用户进程。
1.标准的SQL语言语句类型可以分为:数据定义语句(DDL)、数据操纵语句(DML)和数据控制语句(DCL)。
2.在需要滤除查询结果中重复的行时,必须使用关键字Distinct;在需要返回查询结果中的所有行时,可以使用关键字ALL。
1.在Oracle 系统中,为了实现对表、视图和索引等数据库对象进行管理,Oracle 采用模式实现。
9.根据约束的作用域,约束可以分为表级约束和列级约束两种。
列级约束是字段定义的一部分,只能够应用在一个列上;而表级约束的定义独立于列的定义,它可以应用于一个表中的多个列。
10.填写下面的语句,使其可以为Class 表的ID 列添加一个名为PK_CLASS_ID 的主键约束。
ALTER TABLE Class Add constraint PK_CLASS_ID PRIMARY KEY(ID)3.在PL/SQL 中,如果SELECT 语句没有返回列,则会引发ORACLE 错误,并引发no_data_found 异常。
4.自定义异常必须使用raise 语句引发。
5.查看操作在数据表中所影响的行数,可通过游标的%RowCount 属性实现。
2.BEFORE 和AFTER 指定了触发器的触发时间。
当为一个表配置了约束时,它们将会特别有用。
2.在设置事务隔离层时,需要使用关键字set transaction。
4.在众多的事务控制语句中,用来撤销事务的操作的语句为ROLLBACK,用于持久化事务对数据库操作的语句是COMMIT。
5.当Oracle 检测到死锁后,它会选择一个事务退出。
选择退出事务的原则是执行修改数目最小的事务。
6.锁粒度与数据库系统的并发度和并发控制的开销密切相关。
锁粒度越大,数据库中所能够使用的资源也就越少,并发度也就越小,系统开销也就越小。
7.当对某个表加SRX 锁时,则表中行的锁类型为DML 锁。
6.触发器组成部分:触发器名称、触发条件、触发器限制、触发器主体。
8.oracle提供的最基本的表类型是堆表,它是默认的表类型,用于存储永久性的数据。
1.外部表是在数据库以外的文件系统上存储的只读表,也就是说,外部表中的数据存储在Oracle数据库外部的文件中,并且只能读不能写。
2.外部表是只读的,只能够用于查询数据。
Oracle没有提供内部的方法去更新或删除这些表中的记录。
Oracle也不能在外部表上建立索引。
3.索引组织表的数据是以被排序后的主键顺序存储。
索引组织表为包含精确匹配和范围搜索的查询提供了快速的、基于主键的对表中数据的快速访问。
4.Oracle数据库提供对表或索引的分区方法有5种:范围分区、散列分区、列表分区、组合范围散列分区和组合范围列表分区。
1.B树索引是Oracle中默认的和最常用的索引。
2.在Oracle中,一共可以为分区表建立3种类型的索引:局部分区索引、全局分区索引和全局非分区索引。
3.Oracle对查询语句的执行过程分为4个步骤:解析、优化、代码生成和执行代码。
1.序列是Oracle提供的用于一系列唯一数字的数据库对象。
使用序列可以实现自动产生的主键值。
1.简述表空间和数据文件之间的关系。
答:每一个数据文件都必须隶属于某个表空间,但一个表空间可以由多个数据文件组合而成。
tablespace是逻辑上的概念,datafile则在物理上储存了数据库的种种对象。
2.概述Oracle数据库体系的物理结构。
答:Oracle数据库体系的物理结构是指数据库上实际的、可以从操作系统看到的文件,可以利用操作系统指令进行管理作业,物理存储结构组成文件如下所列:数据文件(Data File):实际存储数据的地方;在线重做日志文件(Online Redo Log File):记录曾经发生过的动作,当数据库受损时,可利用在线重做日志文件进行必要的恢复动作;控制文件(Control File):记录数据库必要的信息,以验证及维护数据库的完整性的信息。
3.简要介绍模式与用户之间的关系。
oracle系统中的模式是一系列逻辑数据结构或对象的集合。
一个模式只能被一个数据库用户所拥有,并且模式的名称与该用户名称相同。
Oracle数据库中的每一个用户都拥有一个唯一的模式,该用户创建的所有模式对象都保存在自己的模式中。
4.列举出ORACLE数据库管理系统中常见的实例进程,并简要说明其用途。
常用的oracle实例进程:数据库写入进程(DBWR):执行将缓冲区的数据写入数据文件,负责缓冲区存储区管理。
日志写入进程(LGWR):负责将重做日志缓冲区中的日志记录写入磁盘日志、文件组。
检查点进程(CKPT):负责执行检查点并更新控制文件,启用DBWR进程将脏缓存块中的数据写入文件。
系统监控进程(SMON):在数据库实例启动时,负责对数据库进行恢复操作。
进程监控进程(PMON):在用户出故障时执行进程恢复,负责清理内存区和释放该进程所使用的资源。
归档进程(ARCH):恢复进程(RECO):负责在分布式数据库环境中自动恢复那些失败的分布式事务。
封锁进程(LCKn)调度进程(Dnnn):负责将用户进程分配给空闲的服务进程,并将处理后的结果返回组用户进程。
5.简述过程和函数的区别。
答:过程被存储在数据库中,并且存储过程没有返回值,存储过程不能由SQL语句直接使用,只能通过EXECUT命令或PL/SQL程序块内部调用。
函数必须有返回值,并且可以作为一个表达式的一部分,函数不能作为一个完整的语句使用,函数返回值的数据类型在创建函数时定义。
6.列举出ORACLE数据库中管理的常见对象,并简要说明其用途。
常见对象有模式对象与非模式对象。
模式对象主要包括表、索引、触发器、PL/SQL 包、视图、存储过程和Java类等。
当用户在数据库中创建一个模式对象后,这个模式对象默认地属于这个用户的模式。
除此之外,还有一些数据库对象不属于任何模式,这些对象称为非模式对象。
非模式对象主要包括表空间、用户和角色等。
7.什么是死锁?死锁的解决方法?死锁是指在两个以上的事务中,每个事务都因为试图加锁当前已被另一个事务加锁的数据项,从而造成的相互等待现象。
解决方法:使用一个ROLLOCK或者COMMIT语句,在第二个会话中回滚这个事务。
这主要针对用户在那个终端上仍然可以使用ROLLBACK语句是有效的。
如果用户已经不能使用ROLLBACK语句或者COMMIT语句结束事务,那么可以使用ALTER SYSTEM KILL SESSION语句,以种植一个会话。
为了做到这一点,需要知道绘画的SID(会话标识符)和SERIAL#(串行数字)值,这可以通过查询V$SESSION 视图得到。
7、oracle数据库触发器的类型?DML触发器:可以DML操作前或操作后进行出发。
替代触发器:是oracle用来替换所使用的实例语句而执行的触发器。
系统触发器:在oracle数据库系统的事件中进行触发。
8.段的分类:数据段:数据段用于存储数据库表中的数据。
索引段:索引段用于存储用户在表中建立的索引信息。
回退段:用于存储用户数据被修改之前的值,每个数据库都至少拥有一个回退段。
LOB段:如果表中含有如CLOB和BLOB等大型对象类型数据时,LOB段独立于保存表中其他数据的数据段。
临时段:当用于使用SQL语句进行排序或汇总时产生,操作完毕后,自动消除。
9.显示游标的使用过程CURSORcursor_name [return ruturn_type] ISselect_statement;打开游标:OPEN cursor_name;提取游标:FETCH cursor_name INTO variables_list;关闭游标:CLOSE CURSOR_NAME;10.描述游标的各个属性?答:%FOUND布尔型属性,如果sql语句至少影响到一行数据,则该属性为true,否则为false;%NOTFOUND布尔型属性,与%FOUND相反;%ISOPEN布尔型属性,当游标已经打开时返回true,游标关闭时则为false;%ROWCOUNT数字型属性,返回受sql语句影响的行数。
11.如何处理用户自定义异常?答:用户自定义异常是通过显示使用RAISE语句来引发的,当引发一个异常时,控制就转到EXCEPTION异常处理部分执行异常处理语句。