搜档网
当前位置:搜档网 › Oracle 10g 数据库管理 应用开发 标准教程 思考与练习

Oracle 10g 数据库管理 应用开发 标准教程 思考与练习

Oracle 10g 数据库管理 应用开发 标准教程 思考与练习
Oracle 10g 数据库管理 应用开发 标准教程 思考与练习

第二章

一、填空题

1.Oracle 数据库系统的物理存储结构主要由3 类文件组成,分别为数据文件、日志文件、控制文件。(另外还包含一些参数文件)

2.用户对数据库的操作如果产生日志信息、则该日志信息首先被存储在日志缓冲区中,随后由LGWR 进程保存到日志文件。

3.一个表空间物理上对应一个或多个数据文件。

4.在Oracle 的逻辑存储结构中,根据存储数据的类型,可以将段分为数据段、索引段、回退段、LOB 段和临时段。

5.在Oracle 的逻辑存储结构中,数据块是最小的I/O 单元。

6.在多进程Oracle 实例系统中,进程分为用户进程、后台进程和服务器进程。当一个用户运行应用程序,如PRO*C 程序或一个Oracle 工具(如SQL*Plus),系统将为用户运行的应用程序建立一个用户进程。

二、选择题

1.下列选项中,哪一部分不是Oracle 实例的组成部分?C

A.系统全局区SGA

B. PMON 后台进程

C.控制

D.Dnnn 调度进程

2.在全局存储区SGA 中,哪部分内存区域是循环使用的?B

A.数据缓冲区

B.日志缓冲区

C.共享池

D.大池

3.解析后的SQL 语句在SGA 的哪个区域中进行缓存?C

A.数据缓冲区

B.日志缓冲区

C.共享池

D.大池

4.如果一个服务进程非正常终止,Oracle 系统将使用下列哪一个进程来释放它所占用的资源?D

A.DBWR

B.LGWR

C.SMON

D.PMON

5.如果服务器进程无法在数据缓冲区中找到空闲缓存块,以添加从数据文件中读取的数据块,则将启动如下哪一个进程?D

A.CKPT

B.SMON

C.LGWR

D.DBWR

6.下列关于共享服务器模式的叙述哪一项不正确?A

A.在共享服务器操作模式下,每一个用户进程必须对应一个服务器进程

B.一个数据库实例可以启动多个调度进程

C.在共享服务器操作模式下,Oracle 实例将启动调度进程Dnnn 为用户进程分配服务进程

D.共享服务器操作模式可以实现少量服务器进程为大量用户进程提供服务

7.当数据库运行在归档模式下时,如果发生日志切换,为了保证不覆盖旧的日志信息,系统将启动如下哪一个进程?D

A.DBWR

B.LGWR

C.SMON

D.ARCH

8.下列哪一个进程和数据库部件可以保证用户对数据库所做的修改在没有保存的情况下,不会发生丢失修改数据?C

A.DBWR 和数据文件

B.LGWR 和日志文件组

C.CKPT 和控制文件

D.ARCH 和归档日志文件

9.下列哪一个进程用于将修改过的数据从内存保存到磁盘数据文件中?A

A.DBWR

B.LGWR

C.RECO

D.ARCH

10.如果要查询数据库中所有表的信息,应当使用下列哪种数据字典视图?A

A.DBA 视图

B.ALL 视图

https://www.sodocs.net/doc/e911238321.html,ER 视图

D.动态性能视图

11.下列哪一项是Oracle 数据库中最小的存储分配单元?D

A.表空间

B.段

C.盘区

D.数据块

12.下面的各项中哪一个正确描述了Oracle 数据库的逻辑存储结构?A

A.表空间由段组成,段由盘区组成,盘区由数据块组成

B.段由表空间组成,表空间由盘区组成,盘区由数据块组成

C.盘区由数据块组成,数据块由段组成,段由表空间组成

D.数据块由段组成,段由盘区组成,盘区由表空间组成

第三章

一、填空题

1.标准的SQL 语言语句类型可以分为:数据定义语句(DDL)、数据操纵语句(DML)和数据控制语句(DCL)。

2.在需要滤除查询结果中重复的行时,必须使用关键字Distinct;在需要返回查询结果中的所有行时,可以使用关键字ALL。

3.如果需要在SELECT 子句中包括一个表的所有列,可使用符号*。

4.如果定义与组有关的搜索条件,可以把group by 子句添加到SELECT 语句中。

5.当进行模糊查询时,就使用关键字LIKE 和通配符"_"或百分号"%"。

6.WHERE 子句可以接收FROM 子句输出的数据,而HAVING 子句则可以接收来自group by、FROM或where 子句的输入。

7.使下列SQL 语句中添加适当的表达式或子句,使语句可以正常运行。

SELECT 供应商所在城市,COUNT(供应商编号)

FROM 供应商信息

GROUP BY 供应商所在城市

ORDER BY 2 DESC;

二、选择题

1.下列的哪个子句在SELECT 语句中用于排序结果集?D

A.HAVING 子句

B.WHERE 子句

C.FROM 子句

D.ORDER BY 子句

2.为了去除结果集中重复的行,可在SELECT 语句中使用下列哪个关键字?B

A.ALL

B.DISTINCT

C.SPOOL

D.HAVING

3.下列哪个关键字或子句用来限定查询结果集中的行?B

A.SELECT

B.WHERE

C.UPDATE

D.INSERT

4.GROUP BY 子句的作用是什么?A

A.查询结果的分组条件

B.组的筛选条件

C.限定返回的行的判断条件

D.对结果集进行排序

5.HAVING 子句的作用是B

A.查询结果的分组条件

B.组的筛选条件

C.限定返回的行的判断条件

D.对结果集进行排序

6.下列哪个函数可以把一个列中的所有值相加求和?B

A.MAX

B.SUM

C.COUNT

D.AVG

7.下列哪个子句是SELECT 语句中必选项?A

A.FROM

B.WHERE

C.HAVING

D.ORDER BY

8.当使用三角函数COS 求余弦时,应以B 为单位传递参数。

A.角度

B.弧度

C.角度和弧度均可

D.上述都不对

9.下列哪个子句实现对一个结果集进行分组和汇总?D

A.HAVING

B.ORDER BY

C.WHERE

D.GROUP BY

10.查询一个表的总记录数,可以采用C 统计函数。

A.AVG(*)

B.SUM(*)

C.COUNT(*)

D.MAX(*)

第四章

一、填空题

1.在SQL 语句中,用于向表中插入数据的语句是Insert。

2.如果需要向表中插入一批已经存在的数据,可以在INSERT 语句中使用select 语句。

3.创建一个UPDATE 语句来修改ARTISTS 表中的数据,并且把每一行的T_ID 值都改成15,应该使用的SQL 语句是update artists set t_id=15;。

4.使用describe 命令可以显示表的结构信息。

5.使用SQL*Plus 的get 命令可以将文件检索到缓冲区,并且不执行。

6.当设置了多个列的显示属性后,如果清除设置的显示属性,可以使用命令clear,而当要清除某列具体的显示属性时,需要使用命令OFF。

7.使用SAVE 命令可以将缓冲区中的SQL 命令保存到一个文件中,并且可以使用Start 命令运行该文件。

8.要设置SQL*Plus 显示数字时的格式可以使用NumFormat 命令,而要设置某个数字列的显示格式要使用Column 命令。

二、选择题

1.要建立一个语句向Types 表中插入数据,这个表只有两列,T_ID 和T_Name 列。如果要插入一行数据,这一行的T_ID 值是100,T_Name 值是FRUIT。应该使用的SQL 语句是A 。

A.INSERT INTO Types Values(100,'FRUIT')

B.SELECT * FROM Types WHERE T_ID=100 AND T_Name='FRUIT'

C.UPDATE SET T_ID=100 FROM Types WHERE T_Name='FRUIT'

D.DELETE * FROM Types WHERE T_ID=100 AND T_Name='FRUIT'

2.用A 语句修改表的一行或多行数据。

A.UPDATE

B.SET

C.SELECT

D.WHERE

3.要建立一个UPDATE 语句更新表的某一列数据,且更新的数据为表统计的结果。则需要在UPDATE 语句中使用什么语句?C

A.UPDATE

B.SET

C.SELECT

D.WHERE

4.DELETE 语句中用B 语句或子句来指明表中所要删除的行。

A.UPDATE

B.WHERE

C.SELECT

D.INSERT

5.使用什么命令可以清除表中所有的内容?D

A.INSERT

B.UPDATE

C.DELETE

D.TRUNCATE

6.如果要设置SQL*Plus 每页打印的数量,则可以使用如下的哪个命令?C

A.SET PAGE

B.PAGESIZE

C.SET PAGESIZE

D.SIZE

7.以下的哪个命令可以将SQL 命令保存到文件中A 。而哪个命令可以将SQL 命令的运行结果保存到文件中B 。

A.SAVE

B.SPOOL

C.GET

D.INPUT

第五章

一、填空题

1.在Oracle 系统中,为了实现对表、视图和索引等数据库对象进行管理,Oracle 采用模式实现。

2.一个模式只能够被一个数据库用户所拥有,其创建的所有模式对象都保存在自己的模式中。

3.Char 数据类型与Varchar2 类型都用于存储字符串。如果定义了Char 类型的字段,并且向其赋值时,字符串的长度小于定义的长度,则使用空格填充;而Varchar2 类型的字段用于存储变长的字符串,即如果向该列赋值的字符长度小于定义时的长度,该列的字符长度只会是实际字符数据的长度,系统不会使用空格填充。

4.ROWID 实际上保存的是记录的物理地址,因此通过ROWID 来访问记录右以获得最快的访问速度。

5.在STORAGE 子句中可以设置6 个存储参数。其中,Initial 指定为表中的数据分配的第一个盘区的大小;Next 指定为存储表中的数据分配的第二个盘区大小;Pctincrease 指定从第二个盘区之后,每个盘区相对于上一个盘区的增长百分比;Minextents 指定允许为表中的数据所分配的最小盘区数目;Maxextents 指定允许为表中的数据所分配的最大盘区数目。

6.通过数据块空间管理参数可以控制数据块中空闲空间的使用方法,其中Pctfree 用于控制数据块的更新预留的空间,而Pctused 用于控制数据块在删除时释放空间的门槛。

7.为Student 表手动分配存储空间,并且大小由NEXT 参数设置,则应使用的语句为Alter table Student allocate extent; ;如果为Student 表手动分配了一个大小为128KB 的新盘区,则应使用的语句为Alter table Student allocate extent(size 128k); 。

8.填写下面语句,使其可以将Class 表移动到表空间SYSTEM 中的数据段,并且其初始化盘区为30KB,第二个盘区为20KB,随后分配的盘区不会增长。

ALTER TABLE Class move

TABLESPACE SYSTEM

STORAGE (

Initial 30k

Next 20k

Pctincrease 0

MAXEXTENTS UNLIMITED);

9.根据约束的作用域,约束可以分为表级约束和列级约束两种。列级约束是字段定义的一部分,只能够应用在一个列上;而表级约束的定义独立于列的定义,它可以应用于一个表中的多个列。

10.填写下面的语句,使其可以为Class 表的ID 列添加一个名为PK_CLASS_ID 的主键约束。ALTER TABLE Class

Add constraint PK_CLASS_ID

PRIMARY KEY(ID)

11.假设已经创建了CHAINED_ROWS 表,填写下面的语句,以便对“业务员信息”表进行

链接记录分析:

ANALYZE TABLE 业务员信息

List chained rows into chained_rows

二、选择题

1.下列哪个对象属于模式对象?C

A.数据段

B.盘区

C.表

D.表空间

2.关于模式的描述下列哪一项不正确?C

A.表或索引等模式对象一定属于某一个模式

B.在Oracle 数据库中,模式与数据库用户是一一对应的

C.一个表可以属于多个模式

D.一个模式可以拥有多个表

3.如果一个表中某条记录的一个字段暂时不具有任何值,那么在其中将保存什么内容?C

A.空格字符

B.数字0

C.NULL

D.该字段数据类型的默认值

4.下列哪一项不是伪列ROWID 的作用?D

A.保存记录的物理地址

B.快速查询指定的记录

C.标识各条记录

D.保存记录的头信息

5.下列哪一项错误地描述了默认值的作用?B

A.为表中某列定义默认值后,如果向表中添加记录而未为该列提供值,则使用定义的默认值代替

B.如果向表中添加记录并且为定义默认值的列提供值,则该列仍然使用定义的默认值

C.如果向表中添加记录并且为定义默认值的列提供值,则该列使用提供的值

D.向表中添加记录时,如果定义默认值的列提供值为NULL,则该列使用NULL 值

6.某用户需要创建一个很小的表,但是该表会被许多查询使用,这时用户应当在创建该表时指定下列哪个子句?B

A.PCTFREE 和PCTUSED

B.CACHE

C.NOLOGGING

D.TABLESPACE

7.为了减少表中的链接记录和迁移记录,应当增大表的哪一个存储参数?A

A.PCTFREE

B.PCTUSED

C.MAXEXTENTS

D.PCTINCREASE

8.唯一约束与主键约束的一个区别是?D

A.唯一约束的列的值不可以有重复值

B.唯一约束的列的值可以不是唯一的

C.唯一约束的列不可以为空值

D.唯一约束的列可以为空值

9.如果为表Employee 添加一个字段Email,现在规定每个雇员都必须具有唯一的Email 地址,则应当为Email 字段建立哪种约束?B

A.Primary Key

B.UNIQUE

C.CHECK

D.NOT NULL

第六章

一、填空题

1.在使用逗号连接的多表查询中,为了防止出现笛卡儿积,需要SELECT 语句的Where 子句中提供连接条件。

2.使用逗号连接的多表查询中,用户可以根据下述基本原则创建需要的各种查询:From 子句应当包括所有的表名,在Where 子句中应定义一个连接条件,当列名为多个表共有时,列名必须被限制。

3.自然连接为具有相同名称的列自动进行记录匹配,它不必指定任何同等连接条件。

4.集合运算符UNION 实现了集合的并运算,操作INTERSECT实现了对集合的交运算,而MINUS 则实现了减运算。

5.使用关键字连接子查询时,EXISTS 关键只注重子查询是否返回行,如果子查询返回一个或多个行,那么便返回为真,否则为假。

二、选择题

1.下列哪一种连接与逗号分隔连接执行的效果相同?C

A.外连接

B.交叉连接

C.自然连接

D.内连接

2.如果只需要返回匹配的列,则应当使用哪种连接?A

A.内连接

B.交叉连接

C.左连接

D.全连接

3.下列SELECT 语句中,哪些子句可以包含子查询?C

A.SELECT

B.GROUP BY

C.WHERE

D.ORDER BY

4.如果使用逗号分隔连接查询两个表,其中一表有20 行,而另一个表有50 行,如果未使用WHERE 子句,则将返回多少行?B

A.20

B.1000

C.50

D.500

5.下列的SELECT 语句中哪个不能正常运行?D

A.

SELECT STD,SNAME,SCLASS,CNAME FROM STUDENT S,CLASS C

WHERE SCLASS=CID;

B.

SELECT * FROM STUDENT S,CLASS C WHERE SCLASS=CID;

C.

SELECT S.SID,https://www.sodocs.net/doc/e911238321.html,,SCLASS,https://www.sodocs.net/doc/e911238321.html,AME FROM STUDENT S,CLASS C

WHERE S.SCLASS=C.CID;

D.

SELECT S.SID,S.SNAME,SCLASS,https://www.sodocs.net/doc/e911238321.html,AME FROM STUDENT

WHERE SCLASS S IN (SELECT CID FROM CLAS C);

6.下面的A SELECT 语句用于查询SCHOOL 模式中的STUDENT 、CLASS 和

DEPARTMENT 表中的信息。完成该语句,使其可以正常运行。

SELECT s.sname,s.saddress,https://www.sodocs.net/doc/e911238321.html,ame,D.DNAME,D.DOFFICE

FROM STUDENT S _________ CLASS C ________ _________ DEPARTMENT D

WHERE D.DNAME='法律系';

A.JOIN、ON S.SCLASS=C.CID、JOIN、ON D.DID=C.DEPARTMENT

B.NATURAL JOIN、ON D.DID=

C.DEPARTMENT、JOIN、ON S.SCLASS=C.CID

C.CROSS JOIN、ON S.SCLASS=C.CID、JOIN、ON

D.DID=C.DERPARTMENT

D.JOIN、ON S.SCLASS=C.CID、NATURAL JOIN、ON D.DID=C.DEPARTMENT

7.在下面各选项中,B 与下面SELECT 语句的查询结果相同。

SELECT SID,SNAME,SADDRESS FROM STUDENT

WHERE SCLASS='C0010545' OR SCLASS IN( SELECT CID FROM CLASS

WHERE DEPARTMENT IN(

SELECT DID FROM DEPARTMENT

WHERE DNAME='化工系'));

A.

SELECT SID,SNAME,SADDRESS FROM STUDENT WHERE SCLASS='C0010545'

INTERSECT

SELECT SID,SNAME,SADDRESS FROM STUDENT S,CLASS C

WHERE S.SCLASS=C.CID AND C.DEPARTMENT IN

(SELECT DID FROM DEPARTMENT WHERE DNAME='化工系');

B.

SELECT SID,SNAME,SADDRESS FROM STUDENT WHERE SCLASS='C0010545'

UNION

SELECT SID,SNAME,SADDRESS FROM STUDENT S,CLASS C

WHERE S.SCLASS=C.CID AND C.DEPARTMENT IN

(SELECT DID FROM DEPARTMENT WHERE DNAME='化工系');

C.

SELECT * FROM STUDENT WHERE SCLASS='C0010545'

UNION

SELECT * FROM STUDENT S,CLASS C

WHERE S.SCLASS=C.CID AND C.DEPARTMENT IN

(SELECT DID FROM DEPARTMENT WHERE DNAME='化工系');

D.

SELECT SID,SNAME,SADDRESS FROM STUDENT WHERE SCLASS='C0010545'

MINUS

SELECT SID,SNAME,SADDRESS FROM STUDENT S,CLASS C

WHERE S.SCLASS=C.CID AND C.DEPARTMENT IN

(SELECT DID FROM DEPARTMENT WHERE DNAME='化工系');

第七章

一、填空题

1.PL/SQL 程序块主要包含3 个主要部分:声明部分、可执行部分和异常处理部分。

2.使用显式游标主要有4 个步骤:声明游标、打开游标、检索数据、关闭游标。

3.在PL/SQL 中,如果SELECT 语句没有返回列,则会引发ORACLE 错误,并引发no_data_found 异常。

4.自定义异常必须使用raise 语句引发。

5.查看操作在数据表中所影响的行数,可通过游标的%RowCount 属性实现。

6.查看下面的程序块,DBMS_OUTPUT 将显示什么结果?N

DECLARE

var_a CHAR(1):='N';

BEGIN

DECLARE

var_a CHAR(2);

BEGIN

var_a:='Y';

END;

DBMS_OUTPUT.put_line(var_a);

END;

7.查看下面的程序块,其中变量var_b 的结果为5 。

DECLARE

Var_a number:=1200;

Var_b number;

BEGIN

IF var_a>500 THEN

var_b:=5;

ELSIF var_a>1000 THEN

var_b:=10;

ELSE

var_b:=8;

END IF;

END;

8.下列程序计算由0~9 之间的任意3 个不相同的数字组成的三位数,共有多少种不同的组合方式?完成下列程序使其能够正确运行。

DECLARE

counter number:=0;

BEGIN

FOR i IN 1..9 LOOP

FOR j IN 0..9 LOOP

IF i!=j THEN

FOR k IN 0..9 LOOP

IF k!=i and k!=j THEN

counter:=counter+1;

END IF;

END LOOP;

END IF;

END LOOP;

END LOOP;

DBMS_OUTPUT.put_line(counter);

END;

二、选择题

1.以下定义的哪个变量是非法的?B

A.var_ab NUMBER(3);

B.var_ab NUMBER(3) NOT NULL:='0';

C.var_ab NUMBER(3) DEFAULT:=1;

D.var_ab NUMBER(3):=3;

2.下列哪一个不是BOOLEAN 变量可能的取值?D

A.TRUE

B.FALSE

C.NULL

D.BLANK

3.只能存储一个值的变量是哪种变量?B

A.游标

B.标题变量

C.游标变量

D.记录变量

4.声明%TYPE 类型的变量时,服务器将会做什么操作?A

A.为该变量检索数据库列的数据类型

B.复制一个变量

C.检索数据库中的数据

D.为该变量检索列的数据类型和值

5.下列哪一项可以正确地引用记录变量中的一个值?B

A.rec_abc(1);

B.rec_abc(1).col;

C.rec_abc.col;

D.rec_abc.first();

6. 下列哪个语句允许检查UPDATE 语句所影响的行数?B

A.SQL%FOUND

B.SQL%ROWCOUNT

C.SQL%COUNTD

D.SQL%NOTFOUND

7.在定义游标时使用的FOR UPDATE 子句的作用是B

A.执行游标

B.执行SQL 语句的UPDATE语句

C.对要更新表的列进行加锁

D.都不对

8.对于游标FOR 循环,以下哪一种说法是不正确的?D

A.循环隐含使用FETCH 获取数据

B.循环隐含使用OPEN 打开记录集

C.终止循环操作也就关闭了游标

D.游标FOR 循环不需要定义游标

9.下列哪个关键字用来在IF 语句中检查多个条件?B\C

A.ELSE IF

B.ELSIF

C.ELSIF

D.ELSIFS

10.如何终止LOOP 循环,而不会出现死循环?C

A.在LOOP 语句中的条件为FALSE 时停止

B.这种循环限定的循环次数,它会自动终止循环

C.EXIT WHEN 语句中的条件为TRUE

D.EXIT WHEN 语句中的条件为FALSE

11.下列哪一项可以正确引用记录表变量中的一个值?B

A.tab_abc(1);

B.tab_abc(1).col

C.tab_abc.col;

D.tab_abc.first();

12.如果PL/SQL程序块的可执行部分引发了一个错误,则程序的执行顺序将发生什么变化?A

A.程序将转到EXCEPTION部分运行

B.程序将中止运行

C.程序仍然正常运行

D.以上都不对第八章

一、填空题

1.在下面程序的空白处填写一定的代码,使该函数可以获取指定编号的商品价格。CREATE OR REPLACE FUNCTION get_price

(P_ID varchar2)

return number is

v_price NUMBER;

BEGIN

SELECT 单价

into v_price

FROM 商品信息WHERE 商品编号=P_ID;

RETURN v_price;

EXCEPTION

WHEN NO_DATA_FOUND THEN DBMS_OUTPUT.PUT_LINE('查找的商品不存在!');

WHEN TOO_MANY_ROWS THEN DBMS_OUTPUT.PUT_LINE(' 程序运行错误!请使用游标');

WHEN OTHERS THEN DBMS_OUTPUT.PUT_LINE('发生其他错误!');

END get_price;

2.假设有一个程序包,其中包含了两个重载的函数max。写出下面程序调用max 函数后的运行结果。

程序包主体:

Create or replace package body

TEST is

Function max(x in number,y in number) return number is Result number;

Begin

x>y then

Result:=x;

Else

Result:=y;

End if;

Return (result)'

End max;

Function max(x in number,y in number,z in number) return number is result number;

Begin

Result:=test.max(x,y);

Result:=test.max(result,z);

Return(result);

End max;

End;

调用程序块:

begin

dbms_output.put_line(TEST.max(10,21,12));

end;

运行结果:21

3.在下面程序的空白处填写适当的代码,使得调用该过程时可以统计某产地的商品数量和总价。

CREATE OR REPLACE PROCEDURE proc_demo(

Merch_place IN varchar2,

Price_sum out NUMBER,

Merch_count out NUMBER)

IS

BEGIN

SELECT SUM(单价),COUNT(*) INTO Price_sum,Merch_count

FROM 商品信息WHERE 产地=Merch_place;

EXCEPTION

WHEN NO_DATA_FOUND THEN

DBMS_OUTPUT.PUT_LINE('所需数据不存在!');

WHEN OTHERS THEN

DBMS_OUTPUT.PUT_LINE('发生其他错误!');

END proc_demo;

二、选择题

1.下列哪个语句可以在SQL*Plus 中直接调用一个过程?D

A.RETURN

B.CALL

C.SET

D.EXEC

2.下面哪些不是过程中参数的有效模式?C

A.IN

B.IN OUT

C.OUT IN

D.OUT

3.如果存在一个名为TEST 的过程,它包含3 个参数:第一个参数为P_NUM1,第二个参数

为P_NUM2,第三个参数为P_NUM3。3 个参数的模式都是IN。P_NUM1 参数的数据类型

是NUMBER , P_NUM2 参数的数据类型是VARCHAR2 ,第三个参数的数据类型是

VARCHAR2。下列哪一个是该过程的有效调用?D

A.TEST(1010,P_NUM3=>'abc',P_NUM2=>'bcd')

B.TEST(P_NUM1=>1010,P_NUM2=>''abc','bcd')

C.TEST(P_NUM1=>1010,'abc','bcd')

D.上述都对

4.函数头部中的RETURN 语句的作用是什么?A

A.声明返回的数据类型

B.声明返回值的大小和数据类型

C.调用函数

D.函数头部不能使用RETURN 语句

5.根据下面的匿名程序块,判断CHECK_VALUE 程序单元是否为一个函数?D

DECLARE

V_TEST NUMBER;

BEGIN

IF V_TEST > 10 THEN

CHECK_VALUE(V_TEST);

END IF;

END;

A.可以为一个函数

B.可以,但函数必须不包含任何SQL 语句

C.可以,但需要初始化变量V_TEST

D.不可以

6.如果在程序包的主体中包括了一个过程,但没有在程序包规范中声明这个过程,那么它将会被认为是D 。

A.非法的

B.公有的

C.受限的

D.私有的

7.如果创建了一个名为USERPKG 的程序包,并在程序包中包含了名为test 的过程。下列哪一个是对这个过程的合法调用?B

A.test(10)

https://www.sodocs.net/doc/e911238321.html,ERPKG.test(10)

https://www.sodocs.net/doc/e911238321.html,ERPKG(10)

D.TEST(10).USERPKG

8.可以引用哪个数据字典视图来查看软件包中包含的代码?C

https://www.sodocs.net/doc/e911238321.html,ER_OBJECTS

https://www.sodocs.net/doc/e911238321.html,ER_PACKAGE_TEXT

https://www.sodocs.net/doc/e911238321.html,ER_SOURCE

https://www.sodocs.net/doc/e911238321.html,ER_TEXT

9.对于下面的函数,哪个语句将成功地调用?D

CREATE OR REPLACE FUNCTION Calc_Sum(Addend_X number,Addend_Y number)

Return number As

Sum number;

BEGIN Sum :=Addend_X+Addend_Y; Return Sum;

END;

A.Calc_Sum

B.EXECUTE Calc_Sum(45)

C.EXECUTE Calc_Sum(23,12)

D.Sum:=Calc_Sum(23,12)

10.当满足下列哪种条件时,允许两个过程具有相同的名称?B

A.参数的名称或数量不相同时

B.参数的数量或数据类型不相同时

C.参数的数据类型和名称不相同时

D.参数的数量和数据类型不相同时

第九章

一、填空题

1.为了建立外部表,首先需要指示数据文件在操作系统上的位置。现在假设在操作系统的F:\DATAFILE 文件夹中存有一个数据文件,使用create directory exterior_data as

'F:\DATAFILE';语句使Oracle 可以访问数据文件。

2.在使用CREATE TABLE 语句创建索引组织表时,必须使用organization index 子句指示创建的表为索引组织表,并且为索引组织表指定主键。

3.PCTTHRESHOLD 指定一个数据块的百分比,当一行中的数据占用空间大于这个百分比时,该行将被分隔到两个位置存储:主键列被存储在基本索引段中,所有其他列被存储在溢出段中。

4.Oracle 中的临时表可以分为事务级临时表和会话级临时表,创建事务级别的临时表,需

要使用on commit delete rows 子句;创建一个会话级别的临时表,则需要使用on commit preserver rows 子句。

5.在创建对象类型时,用户不必特意创建构造函数,它由系统隐式创建,名称与对象类型的名称相同,并且它会接收对象类型的所有属性作为它的参数。

6.如果用户想要对对象类型的实例进行比较排序,则需要使用映射方法Map,它最重要的一个特点是:当在WHERE 或ORDER BY 等比较关系子句中使用对象时会被间接地使用。

7.有两种方法向对象表添加数据:一种是像关系表一样在INSERT 的VALUES 子句中,为对象的每个属性提供值,隐式地创建对象类型实例,向对象表添加数据;另一种方式是显式地创建对象实例,然后再将它添加到对象表。

8.Oracle 数据库提供对表或索引的分区方法有5 种:范围分区、散列分区、列表分区、组合范围散列分区和组合范围列表分区。

9.簇是一种用于存储数据表中数据的方法。簇实际是一组表,由一组共享相同数据块的多个表组成。

二、选择题

1.假设两个数据文件t1 和t2,下面的A 选项可以完成外部表的创建。

Create table test_table(ms_id varchar(20),

Tip varchar(20),

Desc varchar(20))

ORGANIZATION ______ ( _____ ORACLE_LOADER DEFAULT DIRECTORY test_dir

_______ Parameters( badfile 'bad_dev.txt'

LOGFILE 'log_dev.txt'

FIELDS TERMINATED BY ',')

_________ ('F1.txt','F2.txt'));

A.EXTERNAL、TYPE、ACCESS、LOCATION

B.INDEX、TYPE、ACCESS、LOCATION

C.EXTERNAL、TYPE、ACCEPT、LOAD

D.INDEX、TYPE、ACCEPT、LOAD

2.下列关于索引组织表的说法哪项是错误的?D

A.索引组织表所有的数据都是以B 树索引的方式存储的

B.索引组织表实际是一个表而不是索引

C.索引组织表适用于经常需要通过主键字段的值来查询的情况

D.索引组织表不能通过查询来创建

3.下列关于对象的描述哪项是错误的?B

A.为对象表添加数据时,可以在INSERT 语句的VALUES 子句中直接提供值,隐式创建对

象类型实例,然后向表中添加数据;也可以显式创建对象实例后向表中添加数据

B.对象表与其他类型的表一样,都是作为列的集合

C.对象表中的每个对象都有一个OID,OID 是全局唯一的,表示每一个对象的实例

D.查询对象表时,对象表中的数据以关系的形式显示,但也可以通过使用VALUE()函数以

对象实例的形式显示

4.下列哪一个语句可以用于创建一个多列的分区表?B

A.

Create table text_pt( ID NUMBER(20) not null,

Tip varchar2(10),

Re_date date)

Partition by range(ID,re_date)

(partition p1 values less than (2000) or values less than (date'1988-1-1') Tablespace users storage(initial 100k next 100k minextents 1 maxextents unlimited), Partition p2 values less than (maxvalue) or values less than (maxvalue) Tablespace system storage(initial 100k next 100k minextents 1 maxextents unlimited));

B.

Create table text_pt( ID NUMBER(20) not null,

Tip varchar2(10),

Re_date date)

Partition by range(ID,re_date)

(partition p1 values less than (2000,date'1988-1-1')

Tablespace users storage(initial 100k next 100k minextents 1 maxextents unlimited), Partition p2 values less than (maxvalue,maxvalue)

Tablespace system storage(initial 100k next 100k minextents 1 maxextents unlimited));

C.

Create table text_pt( ID NUMBER(20) not null,

Tip varchar2(10),

Re_date date)

Partition by range(ID)

Subpartition by range(re_date)

(partition p1 values less than (2000) or values less than (date'1988-1-1') Tablespace users,

Partition p2 values less than (maxvalue) or values less than (maxvalue) Tablespace system );

D.

Create table text_pt( ID NUMBER(20) not null,

Tip varchar2(10),

Re_date date)

Partition by range(ID)

Subpartition by range(re_date)

(partition p1 values less than (2000,date'1988-1-1')

Tablespace users,

Partition p2 values less than (maxvalue,maxvalue)

Tablespace system );

5.假设要对“商品信息”表进行分区处理,并且根据商品的产地进行分区,则应采用下列哪一种分区方法?C

A.范围分区

B.散列分区

C.列表分区

D.组合范围散列分区

6.下列哪一项是关于簇和簇表不正确的描述?D

A.簇实际上是一组表

B.因为簇将不同表的相关行一起存储到相同的数据块中,所以合理使用簇可以帮助减少查

询数据所需的磁盘读取量

C.簇表是簇中某一个表

D.在创建簇和簇表之后就可以向其中添加数据

第十章

一、填空题

1.B 树索引可以是唯一的或者不唯一的,唯一的B 树索引可以保证索引列上不会有重复的值。

2.在为表中某个列定义PRIMART KEY 约束PK_ID 后,则系统默认创建的索引名为PK_ID。

3.在B 树索引中,通过在索引中保存排过序的索引列的值与相对应的RowID 来实现快速查找。

4.如果表中某列的基数比较低,则应该在该列上创建位图索引。

5.如果要获知索引的使用情况,可以通过查询V$OBJECT_USAGE 视图;而要获知索引的

当前状态,可以查询Index_Stats 视图。

二、选择题

1.查看下面的语句创建了哪一种索引?C

CREATE INDEX test_index ON student(stuno,sname)

TABLESPACE users STORAGE(INITIAL 64k,next 32k);

A.全局分区索引

B.位图索引

C.复合索引

D.基于函数的索引

2.使用ALTER INDEX...REBUILD 语句不可以执行下面的哪个任务?D

A.将反向键索引重建为普通索引

B.将一个索引移动到另一个表空间

C.将位图索引更改为普通索引

D.将一个索引分区移动到另一个表空间

3.下列关于约束与索引的说法中,哪一项是不正确的?D

A.在字段上定义PRIMART KEY 约束时会自动创建B 树唯一索引

B.在字段上定义UNIQUE 约束时会自动创建一个B 树唯一索引

C.默认情况下,禁用约束会删除对应的索引,而激活约束会自动重建相应的索引

D.定义FOREIGN KEY 约束时会创建一个B 树唯一索引

4.假设EMPLOYEE 表包含一个MARRIAGE 列,用于描述职工的婚姻状况,则应该在该字

段上创建什么类型的索引?D

A.B 树唯一索引

B.B 树不唯一索引

C.基于函数的索引

D.位图索引

5.下列关于索引的描述哪一项是不正确的?B

A.表是否具有索引不会影响到所使用的SQL 编写形式

B.在为表创建索引后,所有的查询操作都会使用索引

C.为表创建索引后,可以提高查询的执行速度

D.在为表创建索引后,Oracle 优化器将根据具体情况决定是否采用索引

6.如果经常执行类似于下面的查询语句:

SELECT * from student where Substr(sname,0,2)='刘'

应当为student 表中的sname 列创建哪一种类型的索引?D

A.B 树唯一索引

B.位图索引

C.B 树不唯一索引

D.基于函数的索引

7.假设在一个表的3 个字段NAME、SEX 和MONTH_OF_BIRTH 中分别保存姓名、性别和

出生的月份数据,则应当为这3 个字段分别创建何种类型的索引?D

A.全部创建B 树索引

B.全部创建位图索引

C.分别创建B 树索引、位图索引和位图索引

D.分别创建B 树索引、位图索引和基于函数的索引

8.如果创建的表其主键可以自动编号,则应该为主键创建的索引是哪种类型?A

A.反向键索引

B.B 树索引

C.位图索引

D.基于函数的索引

第十一章

一、填空题

1.在不为视图指定列名的情况下,视图列的名称将使用表列的名称。

2.视图与数据库中的表非常相似,用户也可以在视图进行INSERT、UPDATE、和DELETE

操作。通过视图修改数据时,实际上是在修改基本表中的数据;相应地,改变基本表中的数据也会反映到该表产生的视图中。

3.视图是否可以更新,这取决于定义视图的SELECT 语句,通常情况下,该语句越复杂,创建的视图可以更新的可能性也就越小。

4.下面的语句创建了一个序列对象,该序列对象的开始数为2,每次递增2,当大于1000 后,序列值重新返回到2.在空白处填写适当的代码,完成上述要求。

Create sequence seg_test

Start with 2

Increment by 2

Maxvalue 1000

Cycle;

二、选择题

1.如果允许用户对视图进行更新和插入操作,但是又要防止用户将不符合视图约束条件的记录添加到视图,应当在定义视图时指定下列哪一个子句?C

A.WITH GRANT OPTION

B.WITH READ ONLY

C.WITH CHECK OPTION

D.WITH CHECK ONLY

2.在下列模式对象中,哪个对象不会占用实际的存储空间?A

A.视图

B.表

C.索引

D.簇

3.如果想查看视图中哪些字段是可以更新的,应当查询哪一个数据字典视图?D

A.DBA_VIEWS

B.DBA_OBJECTS

C.DBA_CLU_COLUMNS

D.DBA_UPDATABLE_COLUMNS

4.在下列各选项中,关于序列的描述哪一项是不正确的?D

A.序列是Oracle提供的用于产生一系列唯一数字的数据库对象

B.序列并不占用实际的存储空间

C.使用序列时,需要用到序列的两个伪列NEXTVAL 与CURRVAL。其中,NEXTVAL 将返回序

列生成的下一个值,而CURRVAL 返回序列的当前值

D.在任何时候都可以使用序列的伪列CURRVAL,以返回当前序列值

5.在下列各选项中,关于同义词的描述哪一项是不正确的?B

A.同义词是数据库对象的一个替代名,在使用同义词时,Oracle 会将其翻译为对应的对

象名称

B.在创建同义词时,所替代的模式对象必须存在

C.Oracle 中的同义词分为公有同义词和私有同义词

D.公有同义词在数据库中所有的用户都可以使用;私有同义词由创建它的用户所拥有

第十二章

一、填空题

1.假设有一个表TEST,它仅包含一个字段DATA。现在创建一个触发器,实现将添加的数

据变大写。在下面的空白处填写适当的语句,使之可以正常运行。

Create or replace trigger test_trigger

After insert

on TEST

for each row

Begin

:new.data:=upper(:new.data);

End;

2.BEFORE 和AFTER 指定了触发器的触发时间。当为一个表配置了约束时,它们将会特别有用,BEFORE 可以规定Oracle 在应用约束前调用触发器,而AFTER 规定在应用约束后

调用触发器。

3.假设有一个名为ACTION_TYPE 的表,它记录了对STUDENT 表的操作。在空白处填写

适当的代码,完成上述功能。

Create or replace trigger biud_student_trigger

Before insert or update or delete

on student

Declare

Action action_type.type%type;

Begin

if inserting then action:='INSERT';

elsif updating then action:='UPDATE';

elsif deleting then action:='DELETE'; (书上此处有错!)

end if;

insert into action_type value(user,action);

End;

二、选择题

1.下列哪一个动作不会激发一个触发器?B

A.更新数据

B.查询数据

C.删除数据

D.插入数据

2.在使用CREATE TRIGGER 语句创建行级触发器时,哪一个语句用来引用旧数据?D

A.FOR EACH

B.ON

C.REFERENCING

D.OLD

3.在创建触发器时,哪一个语句决定了触发器是针对每一行执行一次,还是针对每一个语句执行一次?A

A.FOR EACH

B.ON

C.REFERENCING

D.NEW

4.替代触发器可以被附加到哪一类数据库对象上?C

A.表

B.序列

C.视图

D.簇

5.下列哪个语句用于禁用触发器?C

A.ALTER TABLE

B.MODIFY TRIGGER

C.ALTER TRIGGER

D.DROP TRIGGER

6.条件谓词在触发器中的作用是D 。

A.指定对不同事件执行不同的操作

B.在UPDATE 中引用新值和旧值

C.向触发器添加WHEN 子句

D.在执行触发器前必须满足谓词条件

7.可以使用哪个子句来更改相关性标识符的名称?A

A.REFERENCING

B.WHEN

C.INSTEAD-OF

D.RENAME

8.下列哪个相关性标识符是可用的,并且包括了DELETE 触发器中要更新的值?B

A.OLD

B.NEW

C.REFERENCING

D.以上都不是

第十三章

一、填空题

1.事务的ACID 特性包括原子性、一致性,隔离性和永久性。

2.在设置事务隔离层时,需要使用关键字set transaction。

3.可以用SET CONSTRAINT constraint_name DEFERRED 语句,启用某个约束的延期应用,而使用SET CONSTRAINT ALL DEFERRED 语句可以设置本事务中所有约束的延期应用;语句SET CONSTRAINT ALL IMMEDIATE 可以设置约束的应用。

4.在众多的事务控制语句中,用来撤销事务的操作的语句为ROLLBACK,用于持久化事务对数据库操作的语句是COMMIT。

5.当Oracle 检测到死锁后,它会选择一个事务退出。选择退出事务的原则是执行修改数目最小的事务。

6.锁粒度与数据库系统的并发度和并发控制的开销密切相关。锁粒度越大,数据库中所能够使用的资源也就越少,并发度也就越小,系统开销也就越小。

7.当对某个表加SRX 锁时,则表中行的锁类型为DML 锁。

二、选择题

1.下列关于提交事务的叙述哪一项是正确的?A

A.事务提交后,它对数据库所做的修改将永久保存到数据库中

B.在事务提交后,还可以使用回滚语句取消它所做的操作

C.提交事务的响应速度与事务的规模有关

D.提交事务时,并不意味着事务的结束,它只是对事务以前所做的工作进行保存而已

2.下列哪个语句会终止事务?D

A.SAVEPOINT

B.ROLLBACK TO SAVEPOING

C.END TRANSACTION

https://www.sodocs.net/doc/e911238321.html,MIT

3.假如当前数据库有两个并发的事务,其中,第一个事务修改表中的数据,第二个事务在将修改提交约数据库前查看这些数据。如果第一个事务执行回滚操作,则会发生哪种读取现象?C

A.假读

B.非重复读取

C.错读

D.重复读

4.当一个事务基于某些搜索条件读取一个数据表,第二个事务更新表中的数据,那么,当第一个事务再次读取数据时,返回的结果会因为搜索条件而返回不同的结果。这种现象叫做什么?A

A.假读

B.非重复读取

C.错读

D.重复读

5.下列选项中,哪个选项用于设置事务的隔离层?A

A.READ ONLY

B.UPDATE

C.LOCAL

D.ISOLATION LEVEL READ COMMITTED IS

6.下列哪一个锁模式不属于Oracle?D

A.共享锁

B.排他锁

C.行级共享锁

D.死锁

7.下列关于Oracle 支持的锁粒度描述正确的是?A

A.数据库级、表级、行级和列级

B.数据库级、表级、行级

C.行级、列级

D.列级、表级

8.在用SET TRANSACTION 语句设置事务的属性时,为了确保事务中不会发生非重复读取

和错读,但不考虑是否会发生假读,应使用哪个隔离层?D

A.READ COMMITE

B.SERIALIZABLE

C.READ WRITE

D.REPEATABLE READ 第十四章

一、填空题

1.如果要获取数据库中创建的配置文件的信息,可以通过查询数据字典视图DBA_profiles。

2.在Oracle 数据库中将权限分为两类,即系统权限和对象权限。系统权限是指在系统级控制数据库的存取和使用机制,对象权限是指在模式对象上控制存取和使用的机制。

3.角色是具有名称的一组相关权限的组合。

4.连接到数据库的最低系统预定义角色是connect。

5.在用户连接到数据库后,可以查询数据字典role_sys_privs 了解用户所具有的系统权限。

二、选择题

1.假设用户USER1 的默认表空间为USERS,他在该表空间的配额为10MB,则USER1 在USERS 表空间创建基本表时,他应具有什么权限?A

A.CREATE TABLE

B.CREATE USER

C.UNLIMITED TABLESPACE

D.LIMITED TABLESPACE

2.下列哪一项资源不能在用户配置文件中限定?B

A.各个会话的用户数

B.登录失败的次数

C.使用CPU 时间

D.使用SGA 区的大小

3.检查下面的SQL 语句,哪一项是错误的?B

Alter user tempuser identified by oracle default tablespace users

default temporary tablespace temp quota 100M on users;

A.default tablespace users

B.default temporary tablespace temp

C.quota 100M on users

D.identified by oracle

4.下面哪一个不是系统权限?C

A.SELECT TABLE

B.ALTER TABLE

C.SYSDAB

D.CREATE INDEX

5.想在另一个模式中创建表,用户最少应该具有什么系统权限?B

A.CREATE TABLE

B.CREATE ANY TABLE

C.RESOURCE

D.DBA

6.用户查询下列哪一个数据字典视图,可以查看他向其他用户授予的对象权限?C

A.DBA_SYS_PRIVS

https://www.sodocs.net/doc/e911238321.html,ER_TAB_PRIVS_MADE

https://www.sodocs.net/doc/e911238321.html,ER_TAB_PRIVS

https://www.sodocs.net/doc/e911238321.html,ER_OBJ_PRIVS

7.下面哪个系统预定义角色允许一个用户创建其他用户?B

A.CONNECT

B.DBA

C.RESOURCE

D.SYSDBA

8.如果要启用所有角色,则应该使用哪一个命令?A

A.SET ROLE ALL

B.SET ROLE ENABLE ALL

C.ALTER SESSION ALL

D.ALTER USER ROLE ALL 第十五章

一、填空题

1.表空间的管理类型可以分为数据字典管理和本地化管理。

2.在Oracle 的早期版本中,对撤销信息的管理采用手动管理撤销,从Oracle 9i 后采用自动撤销管理方式管理撤销信息。

3.一个表空间具有离线(OFFLINE)、在线(ONLINE)、只读(READONLY)、读写(READWRITE)状态。

4.在创建UNDO 表空间时,所使用的表空间管理方式为本地化管理,并且盘区的管理方式

只允许使用AutoAllOcate 方式。

5.在创建本地化管理临时表空间时,不得指定盘区的管理方式为数据字典管理,临时表空间的盘区管理统一使用本地化管理方式。

二、选择题

1.在创建表空间时,可以指定表空间中存储对象的默认存储参数,其中A 参数用于设置分配给每一个对象的初始区大小。

A.INITIAL

B.NEXT

C.PCTINCREASE

D.MINEXTENTS

2.把一个表空间切换到OFFLINE 状态时,可以使用4 个参数,不包括下列哪一个选项?D

A.IMMEDIATE

B.NORMAL

C.TEMPORARY

D.FORCE

3.在设置撤销表空间的自动管理功能时,DBA 通过使用相关的初始化参数对自动撤销表空间进行配置。下面的4 个参数中,哪一个不是与自动撤销管理功能相关的参数?D

A.UNDO_MANAGEMENT

B.UNDO_TABLESPACE

C.UNDO_RETENTION

D.TRANSACTIONS

4.下面哪一个参数不能在STORAGE 子句中进行设置?B

A.INITIAL

B.PCTUSED

C.MINEXTENTS

D.NEX

5.Oracle 数据库的最小I/O 单位是D ,最小磁盘分配单位是C .

A.表空间

B.段

C.盘区

D.数据块

6.在设置自动撤销管理时,下列B 参数用于设置所使用的撤销表空间,C 参数用于设置撤销数据的保留时间。

A.UNDO_MANAGEMENT

B.UNDO_TABLESPACE

C.UNDO_RETENTION

D.ROLLBACK_SEGMENTS

Oracle10g的数据迁移方案

Oracle10g的数据迁移方案 2009-03-27 08:18 Lora是Acme银行的数据库管理员,她现在在该银行高层管理团队高级会议上成了大家最关注的核心人物。这次会议的目的是确定一些方法,来使最终用户能够详细分析公司主数据仓库中的数据。会上提出的一种想法是创建几个小型数据集市--每个集市根据一个特定的职能范围存储数据--这样每个数据集市就可以由专门的团队来使用。 为了有效地实现数据集市的方法,数据专家必须能将数据快速、有效地放入数据集市中。该团队面临的挑战就是解决如何用数据仓库中的数据快速刷新数据集市中的数据,而这些数据集市又运行在各个结构不同的平台上。这就是Lora为什么出席会议的原因。她会为移动数据提出哪些可供选择的方法呢? 作为一名经验丰富、知识渊博的数据库管理员,Lora向与会者提供了三种可能的方法,分别是: 使用可移动表空间 使用数据泵(导入和导出) 拖出表空间 本文介绍Lora对这三种可选方法的解释,包括它们的实施细节和优缺点。 可移动表空间 Lora从可移动表空方法开始介绍。把整个表空间移动到目标系统的最快速方法是用FTP(文件传输协议)或rcp(远程复制)来简单地转移表空间的基本文件。但是,仅仅复制Oracle数据文件还不够,目标数据库必须识别出并导入文件以及相应的表空间,最终用户才能使用表空间数据。使用可移动表空间包括复制表空间文件和使它们中的数据在目标数据库中可用。 在考虑该方法之前必须进行一些审查。首先,对于要转移到目标系统的表空间TS1,它必须是自含式的(self-contained)。也就是说,在该表空间中表的所有索引、分区及其他从属于该表的各数据段都必须在该表空间内部。Lora解释说,如果一个表空间集合包含所有从属的数据段,那么就认为这个集合是自含式的。例如,如果表空间TS1和TS2要作为一个集合进行转移,TS1中的一个表在TS2中有一个索引,则这个表空间集合就是自含式的。但是,如果TS1中的一个表另一个索引在表空间TS3中,则该表空间集合 (TS1, TS2)就不是自含式的。 要移动表空间,Lora提议使用Oracle数据库10g中的数据泵导出(Data Pump Export)工具。数据泵是Oracle的新一代数据转移工具,它替换了早期的Oracle Export (EXP)和Import (IMP)工具。这些老的工具使用正则SQL来提取和插入数据,而数据泵则与它们不同,它使用能绕过SQL缓冲区的专用API,从而使操

(Oracle数据库管理)玩转实战教程学习笔记最全版

(O管理)玩转实战教程(韩顺平)学习笔记

韩顺平—玩转oracle视频教程笔记 一:Oracle认证,与其它数据库比较,安装 oracle的卸载 1.停止所有与ORACLE相关的服务。 2. 使用OUI(Oracle Universal Installer)卸载Oracle软件。 “开始”->“程序”->“Oracle-OraDb110g_home1|Oracle installation product|Universal installer. 3.删除注册表内容。运行regedit命令,删除下面内容:HKEY_LOCAL_MACHINE|SOFTWARE|ORACLE注册表键,删除此键。 HKEY_LOCAL_MACHINE|SYSTEM|CurrentControlSet|Services,删除Services键下所有以oracle为首的键。 HKEY_LOCAL_MACHINE|SYSTEM|CurrentControlSet|Services|Eventlog|Application,删除此键下所有以oracle为首的键。 HKEY_CLASSES_ROOT,删除此键下所有以Ora,Oracle,Orcl,EnumOra 为前缀的键。 HKEY_CURRENT_USER|Software| Microsoft|Windows|CurrentVersion|Explorer|MenuOrder|Start Menu|Programs,删除此键下所有以oracle为首的键。 HKEY_LOCAL_MACHINE|SOFTWARE|ODBC|ODBCINST.INI注册表键,删除了

Oracle数据库基础

Oracle 数据库基础 数据库是我们安装完产品后建立的,可以在同一台主机上存在8i,9i,10g,11g等多个数据库产品,一套产品可以建立多个数据库,每个数据库是独立的。每个数据库都有自己的全套相关文件,有各自的控制文件、数据文件、重做日志文件、参数文件、归档文件、口令文件等等。 其中控制文件、数据文件、重做日志文件、跟踪文件及警告日志(trace files,alert files)属于数据库文件; 参数文件(parameter file)口令文件(password file)是非数据库文件 我们的表存储在数据库中 数据库不能直接读取 我们通过实例(instance)来访问数据库 数据库实例 实例由内存和后台进程组成 实例是访问数据库的方法 初始化参数控制实例的行为 一个实例只能连接一个数据库

启动实例不需要数据库 产品安装好 有初始化参数文件 就可以启动实例 与是否存在数据库无关 实例内存分为SGA 和PGA SGA:是用于存储数据库信息的内存区,该信息为数据库进程所共享。它包含Oracle 服务器的数据和控制信息,它是在Oracle 服务器所驻留的计算机的实际内存中得以分配,如果实际内存不够再往虚拟内存中写。 PGA:包含单个服务器进程或单个后台进程的数据和控制信息,与几个进程共享的SGA正相反,PGA 是只被一个进程使用的区域,PGA 在创建进程时分配,在终止进程时回收. 后台进程是实例和数据库的联系纽带 分为核心进程和非核心进程 当前后台进程的查看 SQL> select name,description from v$bgprocess where paddr<>'00'; NAME DESCRIPTION

windwows server 2008安装oracle10g数据库

windwows server 2008安装oracle10g数据库操作步骤 1.Oracle 10g版本是10. 2.0.1.0 2.选择Oracle安装目录及数据库登录密码。如下图中红色标识,密码为:Test。 3.如果是windwows server 2008 系统下,点击“下一步”安装Oracle 10g 会提示“程序异 常终止,发生未知错误”。如下图所示: 关于此问题的解决方法如下: 3.1点击取消按钮,退出安装程序。

3.2.修改Oracle 10G(安装文件)\database\stage\prereq\db\refhost.xml 当打开refhost.xml 文件 在后面添加 3.3.到install目录中找到oraparam.ini文件,把 #Windows=4.0,5.0,5.1,5.2 修改成 #Windows=4.0,5.0,5.1,5.2,6.1 并在后面添加 [Windows-6.1-required] #Minimum display colours for OUI to run MIN_DISPLAY_COLORS=256 #Minimum CPU speed required for OUI #CPU=300 [Windows-6.1-optional] 4.右键setup.exe,属性->兼容性->以兼容模式运行这个程序Windows Server 2003,并以管 理员身份运行。如下图所示: 5.运行程序后,安装步骤2填写完后,点击“下一步”即可进入安装界面。如下图:

基于Oracle的小型数据库应用系统设计实现

实验三设计开发小型网络数据库应用系统 一、实验目的 1、(可选)在实验一、二构建的环境下,选择并安装数据库设计CASE工具、 开发文档程序版本管理工具、可视化开发工具,配置其访问协议,用户 权限。 2、在上述环境下,自拟题目完成一个小型网络数据库应用系统的需求分析、 结构设计、编码实现,及调试运行。 二、实验原理、内容及步骤 1、自拟一个小型网络数据库应用系统的题目,完成该系统的设计与开发 2、完成系统设计说明书,包含“系统需求说明、系统E-R逻辑关系、系统物 理结构、系统功能设计。 3、依据上述设计文档,开发实现相应数据库应用系统,要求所开发应用软 件支持多文档界面,具备基本的数据增加、修改、删除、浏览、查询功 能。 三、实验过程及结果 3.1、设计题目 人事资源管理系统 3.2、需求分析 此次人事资源管理系统包括:系统配置信息管理、人脉信息管理、和人脉查询管理,其详细功能描述如下。 1、系统配置信息管理:包括地区信息、认识途径信息、职位信息和行业 信息,这些信息确定你的人脉资源的的简单而又关键的信息,而这些信息比较固定,在系统运行之前就能确定,可以把它作为系统配置信息来处理。 2、人脉信息管理:它提供了人脉信息的增加、删除、修改的功能人脉信 息包括:姓名、所在地、职位、行业、所在单位、认识途径、联系方式和爱好等。 3、人脉查询管理:是指对人脉信息的详细查询的功能,提供了多种查询 方式,包括所在地、认识途径、行业信息、职位信息的查询方式,翻遍用户

自己的人脉资源。 3.3、概要设计 3.3.1、系统功能模块设计: 图3-3-1 系统功能模块图 3.3.2、数据库表设计: 以下是所设计的5张表: 图3-3-2-1地区信息表 字段说明:地区ID,地区名称,例如右边的图。 图3-3-2-1认识途径信息表 字段说明:认识途径ID,认识途径名称,例如右边的图。 图3-3-2-1职位信息表 字段说明:职业ID,职业名称,例如右边的图。

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

文字性习题答案参见相应章节内容 第1章 习题1 D A C C 第2章 习题1 执行edit命令打开文本编辑器; 使用column命令设置列显示宽度 习题2 CONN scott/tiger@orcl SELECT * FROM tab; --本题严谨一些的答案是查询ALL_OBJECTS视图,带条件查询习题3 @d:\init_data\init_data.sql 习题4 SET PAGESIZE 24 SET LINESIZE 100 COLUMN sal FORMA T $99,990.00 第3章 习题1 D B 习题2 CONN stu01/stu01pwd@orcl COLUMN USERNAME FORMA T A10 SELECT username,granted_role FROM user_role_privs; 习题5 CREA TE SESSION 系统权限

习题11 CONN scott/tiger@orcl COLUMN GRANTEE FORMA T A10 SELECT grantee,table_name,grantor,privilege,grantable FROM user_tab_privs_made; 习题12 CONN system/systempwd@orcl COLUMN GRANTEE FORMA T A22 SELECT grantee,privilege,admin_option FROM dba_sys_privs ORDER BY grantee,privilege; SELECT grantee,granted_role FROM dba_role_privs; 使用REVOKE命令回收不必要的系统权限和角色。\ 第4章 习题8 CONN /@cemerp AS SYSDBA ALTER USER scott QUOTA 10M ON USERS; 习题9 CONN system/systempwd@orcl CREA TE TABLESPACE data_ts1 DA TAFILE '%ORACLE_BASE%\oradata\orcl\data_ts1.dbf' SIZE 10000M REUSE; CREA TE TEMPORARY TABLESPACE temp_ts1 TEMPFILE '%ORACLE_BASE%\oradata\orcl\temp_ts1.dbf' SIZE 200M REUSE; CREA TE USER surtec IDENTIFIED BY surtecpwd DEFAULT TABLESPACE data_ts1 TEMPORARY TABLESPACE temp_ts1; GRANT CREA TE SESSION TO surtec; GRANT RESOURCE TO surtec; CONN surtec/surtecpwd@orcl --创建该用户的表emp…… --授权给SIB GRANT SELECT ON emp TO sib; GRANT UPDA TE(flag) ON endowment_insurance TO sib; 习题10 CONN system/systempwd@orcl CREA TE USER test01 IDENTIFIED BY test1234; GRANT CREA TE SESSION TO test01; GRANT CREA TE TABLESPACE TO test01;

oracle10g创建数据库的方法

在Oracle中建库,通常有两种方法。一是使用Oracle的建库工具DBCA,这是一个图形界面工具,使用起来方便且很容易理解,因为它的界面友好、美观,而且提示也比较齐全。在Windows系统中,这个工具可以在Oracle程序组中打开(‖开始‖—―程序‖—― Oracle - OraDb10g_home1‖—― Configuration and Migration Tools‖—― Database Configuration Assistant‖),也可以在命令行(‖开始‖—―运行‖—―cmd‖)工具中直接输入dbca来打开。另一种方法就是手工建库,下面我会一一举例说明。 第一:手工建库 手工建库比起使用DBCA建库来说,是比较麻烦的,但是如果我们学好了手工建库的话,就可以使我们更好地理解Oracle数据库的体系结构。手工建库需要经过几个步骤,每一个步骤都非常关键。它包括: 1、创建必要的相关目录 2、创建初始化参数文件 3、设置环境变量Oracle_sid 4、创建实例 5、创建口令文件 6、启动数据库到nomount(实例)状态 7、执行建库脚本 8、执行catalog脚本创建数据字典 9、执行catproc创建package包 10、执行pupbld 11、由初始化参数文件创建spfile文件 12、执行scott脚本创建scott模式 做完了以上的步骤之后就可以使用―SQL>alter database open;‖打开数据库正常的使用了。下面,我将具体地把以上的几个步骤用实验展开来讲。 实验系统平台:Windows XP 数据库系统版本:Oracle Database 10G Oracle的安装路径:D盘创建的数据库名称:book 1、打开命令行工具,创建必要有相关目录 C:/>mkdir D:/oracle/product/10.2.0/admin/book

Oracle数据库管理与应用实例教程(刘志成)课后习题及答案

【填空题】 1.默认情况OEM的URL地址是https://sd04:1158/em(其中sd04为机器名) 2.Oracle9i发布于2001,i代表Internet,11G发布于2007,g代表grid(网格) 3.在oracle内存结构中,保存正在执行或可能执行的代码的区是代码区 4.在oracle进程结构中,用于实现进程监控功能的进程是PMON 1.Oracle数据库系统的物理存储结构主要由3类文件组成,分别为数据文件、重做日志文件、控制文件。 2.一个表空间物理上对应一个或多数据文件 3.在oracle的逻辑存储结构中,根据存储数据的类型,可以将段分成为数据段、索引段、回滚段、LOB段和临时段。 1.在设计表时,对于邮政编码最适合的数据类型是CHAR 2.在alter table语句中,如果要删除列,可以通过指定DROP COLUMN关键字来实现。 3.如果需要在表中插入一批已经存在的数据,可以在insert语句中使用SELECT语句。 4创建一个update语句来修改goods表中的数据,并且把每一行的t-id值都改成15,应该使用的SQL语句是UPDATE SCOTT.Goods SET t_ID=’15’ 5.使用DESC命令可以显示表的结构信息 6.两个表的主关键字和外关键字的数据应该对应一致,这是属于引用完整性,通常可以通过主键和外键来实现。 7.UNIQUE约束通过确保在列中不输入重复值保证一列或多列的实体完整性。 1.在select语句中选择满足条件的记录使用where关键字,分组之后进行选择使用having 关键字 2.用来返回特定字段中所有值得总和的聚合函数是SUM 3.编写查询语句时,使用%通配符可以匹配多个字符。 18.集合运算符UNION实现集合的并运算,操作符INTERSECT实现了对集合的交运算,而MINUS则实现了减运算 19.如果要定义只读的视图,可以在创建视图时使用READ ONLY关键字 20.删除视图的PL\SQL语句是DROP VIEW [用户方案.]视图名 21.在使用CREATE INDEX创建索引时,使用BITMAP关键字可以创建位图索引 22.聚集(Cluster)是存储表数据的可选择的方法。一个聚集是一组表,将具有同一公共列值的行存储在一起,并且它们经常一起使用,表中相关的列称为聚集键 23.在为表中某个列定义PRIMARY KEY约束PK_ID后,则系统默认创建的索引名为PK_ID 24.如果表中某列的基数比较低,则应该在该列上创建反向索引 25.如果要获知索引的使用情况,可以通过查询DBA_INDEXES视图,而要获知索引的当前状态,可以查询INDEX_STATS视图。 26. 在Oracle的PL/SQL程序中,除了可以使用Oracle规定的数据类型外,还可以使用%TYPE 类型的变量,由系统根据检索的数据表列的数据类型决定该变量的类型,也可以使用%ROWTYPE 类型的变量用来一次存储从数据表中检索的一行数据。 27. SYSDATE函数可以获得当前系统的日期,SUBSTR(s,start,len)函数可以实现从指定的字符串中取指定长度的字符串。 28. 用来变异存储过程的PL/SQL语句是ALTER PROCEDURE,CREATE FUNCTION语句可以用来创建函数。

oracle数据库基础教程期末考试简答与实践小抄范文

(1)第十章模式对象重点 数据是描述事物的符号,是数据库中存储的基本对象。在计算机中,用记录的形式来描述数据。数据与数据的解释即数据的语义是紧密结合的。数据库是指按一定的数据模型组织、描述和存储的数据的集合。数据库管理系统是位于操作系统与用户之间的一层数据管理软件。数据库系统是指数据库、数据库管理系统与计算机系统的结合。通常,在不引起混淆的情况下将数据库系统简称为数据库。 (2)数据库管理系统的主要功能包括:数据定义、数据操纵、数据库运行与控制、数据库建立与维护、数据字典定义以及数据通信等。数据库管理系统的内部分多个层次,由应用层、语言定义及其翻译处理层、数据存取层、数据存储层、操作系统以及数据库组成。 (3)数据库系统由数据库、操作系统、数据库管理系统、开发工具、应用系统、数据库管理员以及数据库用户组成。 (4)概念模型是用简单、清晰、用户易于理解的概念来描述现实世界具体事物及事物之间的关系。它是现实世界到信息世界的抽象,是数据库设计人员进行数据库设计的工具,与具体的数据库管理系统无关。组织数据模型是从数据组织方式的角度来描述信息,它决定了数据在数据库中的组织结构。 (5)关系数据库的完整性约束包括三类:实体完整性、参照完整性和用户定义完整性。实体完整性:是指关系中必须定义主键,以惟一的确定一个元组。主键由一个或多个属性构成,其取值惟一且不能为空(NULL)。参照完整性:在关系模型中,通过外键来表示表之间的联系。参照完整性是指一个表中的外键的取值必须是参照表中主键存在的值或为空(NULL)。例如,学生信息表中“班号”属性为外键,其取值必须是班级信息表中“班号”属性的某一个值或为空。用户定义完整性:是指用户根据特定应用情况,设定一些约束,反映某一具体应用所涉及的数据必须满足的语义要求。例如,“性别”属性的域为“男、女”。 (6) (7) Oracle数据库体系结构由物理存储结构、逻辑存储结构和实例组成。其中物理存储结构描述了操作系统层次数据的存储与管理,包括数据文件、日志文件、重做日志文件等组成。逻辑结构描述了数据库内部数据的组织与管理,由表空间、段、区、块组成。实例是数据库运行的软件结构,由内存结构和后台进程组成。数据库运行过程中,用户的操作在内存区中进行,最终通过后台进行转化为对数据库的操作。

第1章Oracle11g数据库系统

第1章Oracle 11g数据库系统 Oracle数据库系统是世界领先的数据库管理系统,Oracle数据库以其功能强大和配置灵活而著称,同时也因有一定的操作难度,让很多初学者望而却步。本书将由浅入深,以简单易懂的示例带领读者拨开Oracle的神秘面纱。 目前在Oracle世界主要有两类人员:一类是Oracle数据库管理人员,简称DBA;一类是Oracle开发人员。Oracle DBA主要的工作是负责日常的数据库维护和性能优化管理。由于Oracle系统较庞大、复杂,要成为一名合格的DBA,需要掌握的知识较多,比如要掌握Oracle体系结构和性能优化等方面的知识,相对其他数据库而言入门门槛较高,但是薪酬一般也较丰厚。Oracle开发人员的主要工作是使用Oracle提供的SQL语言和PL/SQL 结构化程序设计语言操作数据库,主要职责是操纵Oracle数据库对象,不需要对Oracle系统结构有深入了解,入门较容易。当Oracle开发人员积累了一定的开发知识后,可以通过学习Oracle DBA方面的知识向数据库管理员转型。 1.1 关系型数据库系统介绍 1970年6月,IBM公司的研究员E.F.Codd博士(中文名:埃德加·弗兰克·科德),发表了名为“大型共享数据库的关系模型”的论文,受到了学术界和产业界的高度重视和广泛响应,使得关系型数据库系统很快成为数据库市场的主流。E.F.Codd博士被誉为“关系数据库之父”,其照片如图1.1所示。 图1.1 关系数据库之父埃德加·弗兰克·科德

第1章 Oracle 11g 数据库系统 ·3· 1.1.1 什么是关系型数据模型 关系型数据库简而言之就是使用关系或二维表存储信息。以公司的人员信息管理为 例,为了存储公司内部的员工信息,人事部门一般会建一份列表,在公司未引入信息化管理系统时,大多数人事职员会使用Excel 来保存员工信息,例如图1.2是一份简单的人员信息列表的Excel 文件。 这种Excel 存储数据的方式,将人员的所有信息都包含在一张表中,随着Excel 中的 栏位和记录数越来越多,这份人员信息表会变得越来越繁杂,这种存储数据的方式称为平面文件数据模型。 为了简化修改与维护的复杂性,关系型数据库设计人员通过使用实体关系模型进行数 据库建模,例如人员信息表可以分为员工表和部门表,通过部门编号进行关联,ER 模型如图1.3所示。 图1.2 Excel 人员信息列表 图1.3 人员信息表ER 关系模型 由图1.3中可以看到,通过将员工和部门分别存储在不同的二维表格中,使用主键(PK )和外键(FK )进行关联,使得获取和维护数据变得更容易,这就是关系型数据模型。上述ER 图的3个关键组件分别如下所示。 ? 实体:需要了解的信息,比如部门和员工信息。 ? 属性:一般也称为列或字段,描述实体必须或可选的信息,比如员工表中的工号 和姓名等。 ? 关系:实体之间指定的关联,比如员工的部门编号关联到了部门表的编号属性。 关系型数据模型还涉及一些较复杂的组成元素,涉及较多的数学知识,有兴趣的读者 可以参考一些理论性的读物。 1.1.2 数据库系统范式 为了规范化关系型数据模型,关系型数据库系统在设计时必须遵循一定的规则,这种 规则称为关系型数据库系统范式。了解范式是每个数据库设计或开发人员必须具备的基本功,范式的主要目的是降低数据冗余,设计结构合理的数据库。目前较常用的范式有如下3种。

Oracle10g数据库选择题翻译 答案

第3章创建数据库 (1)后台进程跟踪文件的位置是C A.LOGFILE_DEST B.ORACLE_HOME C.BACKGROUND_DUMP_DEST D.CORE_DUMP_DEST (2)手动创建数据库的第一步是D A.启动实例 B.启动SQL*Plus 以SYSDBA身份连接Oracle C.查看系统的实例名 D.创建参数文件 (3)关于控制文件以下正确的是A A.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目录名为.ctl的文件 (6)哪个脚本文件创建数据字典视图?A A.catalog.sql B.catproc.sql C.sql.sql D.dictionary.sql (7)创建数据库时,DATAFILE子句能定义几个数据文件?D A.一个 B.二个 C.多个;仅一个属于系统表空间 D.多个;都属于系统表空间 (8)谁拥有数据字典?A A.SYS B.SYSTEM C.DBA D.ORACLE (9)在CREATE DA TABASE命令中,非法子句是B A.MAXLOGMEMBERS B.MAXLOGGROUPS C.MAXDATAFILES D.MAXLOGHISTORY (10)创建一个数据库至少需要几个控制文件?A

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、在连接操作中,如果左表和右表中不满足连接条件的数据都出现在结果中,那么这种连接是全外连接。( T ) 21、自然连接是根据两个表中同名的列而进行连接的,当列不同名时,自然连接将失去意义。( T ) 23、PL/SQL代码块声明区可有可无。( T ) 24、隐式游标与显式游标的不同在于显式游标仅仅访问一行,隐式的可以访问多行。( F )

oracle10g优化数据库

一基本概念 1实例和数据库 (1)什么是实例:数据库启动以后,各个进程调入到内存中,各个进程之间的相互协调构成了实例 (2)什么是数据库:各个数据文件的集合: 10.0\oradata\%sid%\目下有各种文件(CTL(控制文件),LOG(日志文件),DBF(数据 文件)) (3)数据库的物理结构 系统的初始化参数:存放的位置为% oracle_home%\product\10.0\Db_1\database\initorcl.ora 数据库日志文件:分为联机日志文件(重做日志文件(redo日志文件):不停的覆盖)和归档日志文件(在数据库热备份的时候使 用);联机日志文件写完以后,依次往下写,全部写满,重新 覆盖原来的,此时就是非归档形式。

控制文件:控制日志文件和数据文件。数据库启动的时候,首先启动控制文件,然后由控制文件打开数据文件,对应数据中的形式就是:database mount ,然后是database open。 查看数据库得文件: 数据库的连接:sqlplus system/bjsxt as sysdba 对应的控制文件从v$controlfile视图中查看。 desc v$controlfile (查看描述) select status ,controlfile from v$controlfile。(查看内容) 对应的数据文件从v$datafile视图中查看。 desc v$datafile select status, name from v$datafile 对应的日志文件从v$logfile视图中查看。 desc v$logfile select member from v$logfile 2内存结构 (1)SGA(系统全局区)的各个缓冲区

Oracle11g数据库基础教程-参考答案资料

第1章Oracle 11g数据库安装与配置 1.简答题 (1) 企业版数据库服务器包含所有的数据库组件,主要针对高端的应用环境,适用于安全性和性能要求较高的联机事务处理(OLTP)、查询密集型的数据仓库和要求较高的Internet应用程序:标准版数据库服务器提供大部分核心的数据库功能和特性,适合于工作组或部门级的应用程序:个人版数据库服务器只提供基本数据库管理功能和特性,适合单用户的开发环境,为用户提供开发测试平台。 (2) 常用数据库类型包括事务处理类、数据仓库类以通用类型。其中事务处理类型主要针对 具有大量并发用户连接,并且用户主要执行简单事务处理的应用环境。事务处理数据库的典型应用有银行系统数据库、Internet电子商务数据库、证券交易系统数据库等。对于需要较 高的可用性和事务处理性能、存在大量用户并行访问相同数据以及需要较高恢复性能的数据 库环境,事务处理类型的配置可以提供最佳性能;数据仓库类型的数据库主要针对有大量的 对某个主题进行复杂查询的应用环境。数据仓库的典型应用有客户订单研究、支持呼叫、销售预测、采购模式以及其他战略性业务问题的历史数据研究。对于需要对大量数据进行快速 访问,以及复杂查询的数据库环境,数据仓库类型配置是最佳选择;通用类型配置的数据库是事务处理数据库与数据仓库配置的折衷方案。既可以支持大量并发用户的事务处理,又可以快速对大量历史数据进行复杂的数据扫描和处理。 (3) 数据库名可以由字母、数字、下划线(_)、#和美元符号($)组成,且必须以字母开头,长度不超过30个字符。在单机环境中,可以不设置域名,域名长度不能超过128个字符。Oracle服务标识符(SID)是一个Oracle实例的唯一名称标识,长度不能超过12个字符。(4) OracleServiceORCL:数据库服务(数据库实例),是Oracle核心服务,是数据库启 动的基础,只有该服务启动,Oracle数据库才能正常启动。(必须启动) OracleOraDb11g_home1TNSListener:监听器服务,该服务只有在远程访问数据库时 才需要(无论远程计算机还是本地计算机,凡是通过Oracle Net网络协议连接数据 库都属于远程访问)。(必须启动) OracleOraDb11g_home1ConfigurationManager:配置Oracle启动时的参数的服务。(非必须启动) OracleOraDb11g_home1ClrAgent:提供对.NET支持的Oracle数据库扩展服务。(非必须启动) OracleJobSchedulerORCL:数据库作业调度服务。(非必须启动) OracleDBConsoleorcl:Oracle控制台服务,即企业管理器服务。只有该服务启动了, 才可以使用Web方式的企业管理器管理数据库。(非必须启动) OracleVssWriterORCL:是Oracle对VSS提供支持的服务。(非必须启动) OracleMTSRecoveryService:是允许数据库充当一个微软事务服务器、COM/COM+对象和分布式环境下的事务资源管理器的服务。

基于Oracle数据库的学生信息管理系统

基于数据库的学生信息管理系统 1 引言1.1 课题来源及意义21世纪是信息化的时代,信息化以更快捷更为方便为目标来融入各行各业。学校也不能例外。当前,我国的学校正在加紧实施信息化建设,其中学生信息管理是相当重要的一部分。目前社会上信息管理系统发展飞快,各个事业单位都引入了信息管理系统来管理自己日益增长的各类信息,学生信息管理系统也是有了很大的发展,商业化的学生信息管理系统也不少。但本系统完全独立开发,力求使系统功能简洁明了,但功能齐全且易于操作[1]。学生信息管理系统是一个教育单位不可缺少的部分,它的内容对于学校的决策者和管理者来说都是至关重要,所以学生管理系统应该能够为用户提供充足的信息和快捷的查询手段[2]。但一直以来人们使用传统人工的方式管

理文件,这种管理方式存在着许多缺点,如:效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。在各大高校,用计算机管理学校的信息已经越来越普遍了。用计算机不但可以提高工作效率,而且还节省了许多人力物力,增强了学校资料的安全性。提高了学校的管理能力,为此,用计算机来管理学校的信息,是非常必要的。1.2 研究内容与目标主要工作包括:新系统在原有系统的基础上加入新的数据库的支持,使用了现金的数据库技术与数据管理技术,是数据的准确性与安全性得到了很大的提高,且在用户的并行操作与用户管理方面也有了极大地改善。利用虚拟机的运行环境与数据库相结合实现了主要原型系统。设计了基于三层结构的设计思想。第 1 页共39 页尽量达到人力与设备费用的节省,并且是软件处理数据的速度提高,系统的整个设计过程必

Oracle经典教程

第 1 章 走进 Oracle 主要内容 ?Oracle 安装 ?Oracle 创建用户和角色 ?客户端链接 Oracle 服务器

1.Oracle 简介 在第一学期我们已经接触过关系型数据库SQL Server,对数据库、表、记录、表的增删改查操作等这些基本的概念已经了解。Oracle 是基于对象的关系型数据库,Oracle 也是用表的形式对数据存储和管理,并且在Oracle 的操作中添加了一些面向对象的思想。 Oracle 数据库是Oracle(中文名称叫甲骨文)公司的核心产品,Oracle 数据库是一个适合于大中型企业的数据库管理系统。在所有的数据库管理系统中(比如:微软的SQL Server,IBM 的DB2 等),Oracle 的主要用户涉及面非常广,包括:银行、电信、移动通信、航空、保险、金融、电子商务和跨国公司等。Oracle 产品是免费的,可以在Oracle 官方网站上下载到安装包,另一方面Oracle 服务是收费的。 Oracle 公司成立以来,从最初的数据库版本到Oracle7、Oracle8i、Oracle9i,Oracle10g 到Oracle11g,虽然每一个版本之间的操作都存在一定的差别,但是Oracle 对数据的操作基本上都遵循SQL 标准。因此对Oracle 开发来说版本之间的差别不大。 很多人没有学习Oracle 就开始发怵,因为人们在误解Oracle,认为Oracle 太难学了,认为Oracle 不是一般人用的数据库,其实任何数据库对应用程序研发人员来说,都是大同小异,因为目前多数数据库都支持标准的SQL。在Oracle 这本书中,我们能学习到:?Oracle 的安装 ?Oracle 数据管理 ?常用子查询及常用函数 ?PL/SQL 编程 ?Oracle 基本管理 由于在第一学期已经接触了SQL Server,Oracle 数据库的概念不是很难,主要是实践,因此在本书的学习中,认真的完成上机练习是学习好本书的关键。 接下来我们先从Oracle 安装开始,接触一些Oracle 中基本的概念。

oracle10g基本使用

Oracle10g的基本使用 1、Oracle10g管理工具介绍 1.1管理工具(1) 概述: 是oracle自带的工具软件,主要用于执行sql语句,pl/sql块。 启动方式有如下三种: 1)开始-》所有程序-》Oracle - OraDb10g_home1-》应用程序开发-》sql*plus 2)在运行栏中输入:sqlplusw即可 3)iSQL*Plus:在IE浏览器中输入http://IP:5560/isqlplus 1.2管理工具(2) 概述: sqlplus dos下操作oracle的工具,其功能和sql*plus相似。 1)在运行栏中输入sqlplus 2)找到可执行文件sqlplus.exe,该可执行文件在oracle主目录\oracle\product\10.2.0\db_1\bin\sqlplus.exe,鼠标双击运行即可。 1.3管理工具(3) 概述: Oracle10g的企业管理器 在IE浏览器中输入http://IP地址:1158/em即可启动oracle10g的企业管理器,是一个web应用。 1.4管理工具(4) 概述: pl/sql developer属于第三方软件,主要用于开发,测试,优化oracle pl/sql的存储过程比如:触发器,此软件oracle不带,需要单独安装。

2、Oracle常用命令 2.1连接命令 (1)conn[ect] 用法:conn 用户名/密码@网络服务名[as sysdba/sysoper] 注意:a.当用特权用户身份连接时,必须带上as sysdba或是as sysoper。 b.如果是连接远程服务器上的数据库时,在@后面必须跟上ip地址:端口号/SID,即:conn 用户名/密码@IP地址:端口号/SID (2)disc[onnect] 说明:该命令用来断开与当前数据库的连接。 (3)passw[ord] 说明:该命令用于修改用户的密码。如果想修改其它用户的密码,需要用sys/system登录。 (4)show user 说明:显示当前登录用户名。 (5)exit 说明:该命令会断开与数据库的连接,同时会退出sql*plus。 2.2文件操作命令 (1)start和@ 说明:运行sql脚本。 例子:sql>@ d:\a.sql 或者sql>START d:\a.sql

数据库oracle论文

数据库管理系统之 --oracle 姓名: 班级:学号: 东北大学秦皇岛分校

数据库管理系统之——Oracle 摘要:近些年来,ORACLE在资本层面频频发起重量级的并购,先后收购了PeopleSoft、BEA、SUN等知名软件企业,极大增强了自家整体实力。产品线上也是四面出击,现如今的ORACLE早已由一个单纯的数据库软件厂商,蜕变成涵盖了包括数据库、中间件、操作系统、企业化管理、商业智能、虚拟机、开发工具等,从软件到硬件,可对外提供完整企业解决方案的巨无霸厂商,完成从卖产品到卖服务的重大角色转变。 ——Oracle数据库的产品介绍 功能与发展:Oracle数据库是一个功能极其强大的数据库系统。它起始于七十年代末的关系型数据库技术。Oracle数据库的关键是怎样理解数据间的关系,然后构造反映这些关系的信息库。1984年Oracle成功地将关系型数据库转移到桌面计算机上,Oracle提供了一个完整的客户服务器体系结构的商用DBMS。利用软件层与多种操作系统支持通信协议的配合,为Oracle数据库提供了分布式环境,可以实现多点查询。Oracle数据库发布了革命式的航锁定模式,提高了事物的处理速度,使关系型数据库应用进入了一个全新的天地。 1992年推出的Oracle7采用了自协调的多线索服务器体系结构,动态调整高速数据库服务进程的个数。这都为构造产业化的以及企业类的应用提供了技术支持。 Oracle数据库系统的特点是支持大数据库、多用户的高性能事务处理,Oracle数据库具有良好的硬件环境独立性,支持各种类型的大型、中型、小型和微机系统。Oracle数据库遵守数据存取语言、操作系统、用户接口和网络通信协议的工业标准,有着更好地安全性和完整控制,并且Oracle数据库允许将处理分为数据库服务器和客户应用程序处理,所有共享的数据管理由具有数据库管理的系统的计算机处理,而运行数据应用的工作站侧重于解释和显示数据。 ——Oracle系统结构组成 Oracle的存储管理:数据库管理员终于可以将自己从单调而常用的增加、移动和删除存储磁盘的任务中解脱出来了—并且无需增加额外的成本。 假设您刚得到一个新的Oracle 数据库的全新的服务器和存储子系统。除操作系统配置之外,在您能够创建数据库之前,最重要的工作是什么?很明显,就是创建存储系统布局—或更具体地说,选择一种保护级别,然后构建必需的冗余磁盘阵列(RAID) 组。 在大多数数据库安装中安装存储器要花费大量的时间。从多种可能中选择一种特定的磁盘配置需要仔细的规划和分析,并且最重要的是,需要详细了解存储技术、卷管理器和文件系统。在这个阶段的设计任务可以大致说明如下: ● 确认存储器在操作系统级通过了认证,并确定冗余保护的级别,该级别可能已经提供(硬件RAID)。 ● 集中和构建逻辑卷组,并确定分段或镜像是否也是必需的。 ● 在逻辑卷管理器创建的逻辑卷上构建文件系统。 ● 设定所有权和权限,以便Oracle 进程可以对设备进行打开、读和写操作。 ● 在文件系统上创建数据库,如果可能的话务必在非RAID 的位置上创建特殊文件,例如重做日志、临时表空间和重做表空间之类的特殊文件。 在大多数公司中,这些步骤大部分是由对存储系统非常了解的某些人来执行的。这里的“某些人”通常不是数据库管理员。 Oracle的故障管理:故障管理的展开程序有以下六个方面:

相关主题