当前位置:文档之家› oracle数据库期末复习

oracle数据库期末复习

oracle数据库期末复习
oracle数据库期末复习

一、填空题

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

2. 执行立即关闭的命令是_hareg –n oracle_。

3. 改变数据库状态的语句是alter database。

4. 用于创建表空间的语句是create tablespace ,

5. 修改表空间的语句是alter tablespace。

6. 向用户授权的命令为grant connect,resource to cdpfzx。

7. 创建用户的语句是create user CDPFZX identified by CDPFZX。

8. 修改角色的语句是alter role 。

9. 在CREATE TABLE语句中,定义主键的关键字是_PRIMARY KEY。

10. 在ALTER TABLE语句中,修改列名的关键字是_______ALTER __________。

11. 在SELECT语句中,设置查询条件的关键字是_____where____________。

12. 在SELECT语句中,实现模糊查询的功能的关键字是_____like_____________。

13. [declarations]关键字标志着PL/SQL程序中声明段的开始,在声明段中可以声明变量、常量和游标等对象。 14. PL/SQL的异常处理代码在异常处理块中实现。

二、选择题

1. Oracle 10g的g 表示( A )。 A.版本 B.网络 C.数据库 D.网格计算

2. 登录iSQL*Plus页面时使用的默认端口号为( D )。 A.1433 B.5560 C.1158 D.1521

3. 下面不属于Oracle数据库状态的是( C D )。

A.OPEN B.MOUNT C.CLOSE D.READY

4. 删除数据库的语句是( C )。

A.DELETE DA TABASE B.REMOVE DA TABASE C.DROP DATABASE D.UNMOUNT DA TABASE

5. 用于显示所有表空间描述信息的视图为( B )。

A.V$TABLESPACE B.DBA_TABLESPACE C.USER_TABLESPACE D.TABLESPACE

6. 在CREATE TABLESPACE 语句中使用( C )关键字可以创建临时表空间。

A.TEM B.BIGFILE C.TEMPORARY D.EXTENT MANAGEMENT LOCAL

7. 撤销用户指定权限的命令是( A )。

A.REVOKE B.REMOVE RIGHT C.DROP RIGHT D.DELETE RIGHT

8. 拥有所有系统级管理权限的角色是( D )。

A.ADMIN B.SYSTEM C.SYSMAN D.DBA

9. 在CRAETE TABLE 语句中,指定某列不接受空值,可以使用哪个关键字( B )。

A.NOT EMPTY B.NOT NULL C.IS EMPTY D.IS NULL

10. 在ALTER TABLE 中,指定某列不可用,可以使用哪个关键字( A)。 A.UNUSED B.SET UNUSE C.DISABLE D.NOUSE

11. 用于修改表中数据的语句是( C )。A.EDIT B.MODIFY C.UPDA TE D.ALTER

12. 在PL/SQL标识符的最大长度为( B )。A.20 B.30 C.40 D.50

13. Oracle用于保存二进制大对象的数据类型是( C )。 A.BINARY B.BIGOBJECT C.BLOB D.CLOB

14. 在循环语句中,退出循环体的关键字是( A )。A.BREAK B.EXIT C.UNLOAD D.GO

三、简答题

1、简述用户和角色的关系。

答:Oracle使用角色的方法来限定各种用户的权力,在系统中可以有许多用户,各种用户有各种不同的角色,拥有不同的权力。实践表明与其很明确的赋一组权限给一个角色,不如赋给一个角色,然后把这个角色赋给一组用户。这样就可以实现动态的权限管理,当这组用户的权限必须改变时,只需改变角色的权限就可以了。

2、简述表与视图的区别与联系

答:区别:

1、视图是已经编译好的sql语句,是基于 SQL 语句的结果集的可视化的表。而表不是

2、视图没有实际的物理记录。而表有。

3、表是内容,视图是窗口

4、表只用物理空间而视图不占用物理空间,视图只是逻辑概念的存在,表可以及时四对它进行修改,但视图只能有创建的语句来修改

5、表是内模式,视图是外模式

6、视图是查看数据表的一种方法,可以查询数据表中某些字段构成的数据,只是一些SQL语句的集合。从安全的角度说,视图可以不给用户接触数据表,从而不知道表结构。

7、表属于全局模式中的表,是实表;视图属于局部模式的表,是

虚表。 8、视图的建立和删除只影响视图本身,不影响对应的基本表。

联系:视图(view)是在基本表之上建立的表,它的结构(即所定义的列)和内容(即所有数据行)都来自基本表,它依据基本表存在而存在。一个视图可以对应一个基本表,也可以对应多个基本表。视图是基本表的抽象和在逻辑意义上建立的新关系

四、应用题

1.创建、修改表空间的定义,以及编辑和维护表空间。(1)创建临时表空间tmptbs,文件大小为20M,可以重用,指定其最小区间为16M。

CREATE TEMPORARY TABLESPACE tmptbs TEMPFILE '/oracle/oradata/db/tmptbs.dbf' SIZE 20M

autoextend on next 50m minsize 16m extent management local;

(2)在临时表空间tmptbs中添加临时文件,tmptbs01.dbf,文件大小为20MB。

ALTER TABLESPACE tmptbs

ADD DATAFILE '/oracle/oradata/db/ tmptbs01.dbf ' SIZE 20M;

(3)将表空间tmptbs设置为脱机状态。

ALTER TABLESPACE tmptbs OFFLINE;

(4)将表空间tmptbs设置为只读表空间。

ALTER TABLESPACE tmptbs READ ONL Y;

(5)删除表空间tmptbs,在删除表空间的同时,删除包含的段和数据文件。

DROP TABLESPACE tmptbs INCLUDING CONTENTS AND DATAFILES;

2.创建和管理用户的基本属性,并对用户授予相应的角色和权限。

(1)创建用户名为USERMAN,密码为USERPASS的用户。

create user USERMAN identified by USERPASS default tablespace tmptbs

(2)设置用户USERMAN的密码立即过期。

Alter user USERMAN USERPASS expired

(3)锁定用户USERMAN。

Alter user USERMAN lock account lock

(4)对于用户USERMAN授予SYSDBA权限。

GRANT SYSDBA to USERMAN

(5)对用户USERMAN授予表USERS的SELECT、INSERT、UPDA TE、DELETE权限。

GRANT SELECT,INSERT,DELETE,UPDA TE ON USER to userman

五、选做题

编写PL/SQL程序,使用LOOP…EXIT…END语句计算1~100之间所有偶数之和。

declare

v_count number := 1; v_sum number := 0; begin

for v_count in 1..100 loop

if mod(v_count,2) = 0 then v_sum := v_sum + v_count; end if; end loop;

dbms_output.put_line(v_sum);

试卷二

1、以下()内存区不属于SGA。

A.PGA B.日志缓冲区 C.数据缓冲区 D.共享池

2、()模式存储数据库中数据字典的表和视图。

A.DBA B.SCOTT C.SYSTEM D.SYS

3、在Oracle中创建用户时,若未提及DEFAULT TABLESPACE关键字,则Oracle就将()表空间分配给用户作为默认表空间。

A.HR B.SCOTT C.SYSTEM D.SYS

4、()服务监听并按受来自客户端应用程序的连接请求。

A.OracleHOME_NAMETNSListener B.OracleServiceSID

C.OracleHOME_NAMEAgent D.OracleHOME_NAMEHTTPServer

5、()函数通常用来计算累计排名、移动平均数和报表聚合等。 A.汇总 B.分析 C.分组 D.单行

6、()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”) FROM emp;

7、锁用于提供( )。 A.改进的性能 B.数据的完整性和一致性 C.可用性和易于维护 D.用户安全

8、( )锁用于锁定表,允许其他用户查询表中的行和锁定表,但不允许插入、更新和删除行。

A.行共享 B.行排他 C.共享 D.排他

9、带有( )子句的SELECT语句可以在表的一行或多行上放置排他锁。

A.FOR INSERT B.FOR UPDA TE C.FOR DELETE D.FOR REFRESH

10、使用( )命令可以在已分区表的第一个分区之前添加新分区。

A.添加分区 B.截断分区 C.拆分分区 D.不能在第一个分区前添加分区

11、( )分区允许用户明确地控制无序行到分区的映射。 A.散列 B.范围 C.列表 D.复合

12、可以使用()伪列来访问序列。

A.CURRV AL和NEXTV AL B.NEXTV AL和PREV AL C.CACHE和NOCACHE D.MAXV ALUE和MINV ALUE

13、带有错误的视图可使用()选项来创建。

A.FORCE B.WITH CHECK OPTION C.CREATE VIEW WITH ERROR D.CREATE ERROR VIEW

14、在联接视图中,当()时,该基表被称为键保留表。

A.基表的主键不是结果集的主键 B.基表的主键是结果集的主键

C.基表的主键是结果集的外键D.基表的主键不是结果集的外键

15、在列的取值重复率比较高的列上,适合创建()索引。

A.标准 B.唯一 C.分区 D.位图

16、要以自身的模式创建私有同义词,用户必须拥有()系统权限

A.CREATE PRIVATE SYNONYM B.CREATE PUBLIC SYNONYM

C.CREATE SYNONYM D.CREATE ANY SYNONYM

17、PL/SQL块中不能直接使用的SQL命令是()。

A.SELECT B.INSERT C.UPDATE D.DROP

18、以零作除数时会引发()异常。

A.V ALUE_ERROR B.ZERO_DIVIDE C.STORAGE_ERROR D.SELF_IS_NULL

19、要更新游标结果集中的当前行,应使用()子句。

A.WHERE CURRENT OF B.FOR UPDA TE C.FOR DELETE D.FOR MODIFY

20、用于处理得到单行查询结果的游标为()。

A.循环游标 B.隐式游标 C.REF游标 D.显式游标

21、公用的子程序和常量在()中声明。 A.过程 B.游标 C.包规范 D.包主体

22、数据字典视图()包含存储过程的代码文本

A.USER_OBJECTS B.USER_TEXT C.USER_SOURCE D.USER_DESC

23、以下不属于命名的PL/SQL块的是()。 A.程序包 B.过程 C.游标 D.函数

24、()包用于显示PL/SQL块和存储过程中的调试信息。

A.DBMS_OUTPUT B.DBMS_STANDARD C.DBMS_INPUT D.DBMS_SESSION

25、Oracle的内置程序包由()用户所有。 A.SYS B.SYSTEM C.SCOTT D.PUBLIC

26、()触发器允许触发操作中的语句访问行的列值。 A.行级 B.语句级 C.模式 D.数据库级

27、在非归档日志方式下操作的数据库禁用了()。

A.归档日志 B.联机日志C.日志写入程序 D.日志文件

28、以下哪种备份方式需要在完全关闭数据库进行()。

A.无归档日志模式下的数据库备份 B.归档日志模式下的数据库备份

C.使用导出实用程序进行逻辑备份 D.以上都不对

29、()方式的导出会从指定的表中导出所有数据。

A.分区 B.表C.全部数据库 D.表空间

30、()参数用于确定是否要导入整个导出文件。

A.CONSTRAINTS B.TABLES C.FULL D.FILE

二、填空题(每空2分,共40分)

1、假设已在某远程客户端完成网络服务名配置,服务名为aptech,请写出用户MARTIN(用户口令martinpass)连接到服务器的命令:

__________________________[1]__________________________________;

2、SYS用户以管理员身份登录后,要授予用户MARTIN可以对SCOTT用户的EMP表进行查询的权限,请写出授权命令:(假设MARTIN用户已存在) _________________________[2]___________________________________;

3、创建表employee的副本,但不包含表中的记录:

CREATE TABLE employee_copy AS____________[3]___________________;

4、查询itemfile表中itemrate列的信息,要求将数值转换为字符串,并使用当前货币符号作为前缀:

SELECT ____[4]____(itemrate,'C99999') FROM itemfile;

5、查itemfile表中itemdesc、re_level列的信息,要求re_level为NULL时显示为0

SELECT itemdesc, __[5]__(re_level,0) FROM itemfile;

6、完成以下PL/SQL块,功能是:显示2 到50的25个偶数。 BEGIN FOR____[6]_____ IN ____[7]_____ LOOP DBMS_OUTPUT.PUT_LINE(even_number*2); END LOOP END;

7、完成以下PL/SQL块,功能是:接受职员编号并检索职员姓名。将职员姓名存储在变量empname中,如果代码引发V ALUE_ERROR异常,则向用户显示错误消息。 DELCARE

empname employee.ename%TYPE;; eno employee.empno%TYPE; BEGIN

eno:=’&employee_number’;

___________________[8]______________________________________; DBMS_OUTPUT.PUT_LINE(‘职员姓名:’||empname); ______[9]______

WHEN VALUE_ERROR THEN

DBMS_OUTPUT.PUT_LINE(‘要存储在变量中的值过大’) END;

8、完成以下PL/SQL块,功能是:使用游标,显示所有单价低于250元的玩具的单价。 DECLARE

my_toy_price toys.toyprice%TYPE; CURSOR toy_cur IS

SELECT toyprice FROM toys WHERE toyprice<250; BEGIN

________[10]_______ LOOP

_______________[11]_____________ EXIT WHEN toy_cur%NOTFOUND;

DBMS_OUTPUT.PUT_LINE (toy_cur%ROWCOUNT || '. 玩具单价:' ||

my_toy_price); END LOOP; CLOSE toy_cur; END;

9、完成以下PL/SQL块,功能是:使用游标显示销售报表。如果目标销售额(tsales)大于实际销售额(asales),则显示消息“需提高销售额”。如果tsales等于asales,则显示消息“已达到销售额”,否则显示消息“销售业绩出色” DECLARE

CURSOR sales_cur IS SELECT * FROM salesdetails; BEGIN

_____________________[12]______________ IF sales_rec.tsales > sales_rec.asales THEN

DBMS_OUTPUT.PUT_LINE('产品:'||sales_rec.pid||' 需提高销售额'); ELSE

IF _____________[13]______________ THEN

DBMS_OUTPUT.PUT_LINE('产品:'||sales_rec.pid||'已达到销售额'); ELSE

DBMS_OUTPUT.PUT_LINE('产品:' ||sales_rec.pid||'销售业绩出色'); END IF; END IF; END LOOP; END;

10、完成以下PL/SQL块,功能是:创建一个交换两数的过程。 CREATE OR REPLACE PROCEDURE

swap(p1 IN OUT NUMBER, p2 ____[14]_____ NUMBER) IS v_temp NUMBER; BEGIN

v_temp := p1; p1 := p2;

p2 := v_temp; END;

11、完成以下PL/SQL块,功能是:创建一个函数dept_name,其功能是接受职员编号后返回职员所在部门名称。(注:部门名称在dept表中,而职员信息在emp表中,职员所在部门号的列名为deptno)

CREATE OR REPLACE FUNCTION dept_name (emp_no NUMBER) RETURN V ARCHAR2 AS dept_no NUMBER (2);

result dept.dname%TYPE; BEGIN

___________________[15]___________________________________ SELECT dname INTO result FROM dept W

HERE deptno = dept_no; ________[16]__________; EXCEPTION

WHEN OTHERS THEN RETURN NULL; END;

12、要执行pack_me包中的order_proc过程(有一个输入参数),假设参数值为’002’,可以输入以下命令:EXECUTE ___________[17]__________________

13、完成以下PL/SQL块的功能是:创建一个触发器biu_job_emp,无论用户插入记录,还是修改EMP表的job 列,都将用户指定的job列的值转换成大写。

CREATE OR REPLACE TRIGGER biu_job_emp _________________[18]________________ ____________[19]____ ___ BEGIN :NEW.job :=______[20]_____; END;

二、填空题(每空2分,共40分)

[1] Connect martin/martinpass@aptech [2] Grant select on scott.emp to martin [3] Select * from employee where 1=2 [4] To_char [5] NVL [6] even_number [7] 1..25

[8] SELECT ename INTO empname FROM employee WHERE empno=eno; [9] EXCEPTION

[10] OPEN toy_cur [11] FETCH toy_cur INTO my_toy_price; [12] FOR sales_rec IN sales_cur LOOP

[13] sales_rec.tsales = sales_rec.asales [14] IN OUT

[15] SELECT deptno INTO dept_no FROM emp WHERE empno=emp_no; [16] RETURN result;

[17] pack_ma.order_proc(‘002’)

[18] BEFORE INSERT OR UPDA TE OF job ON emp [19] FOR EACH ROW [20] UPPER(:NEW.job)

试卷三复习题

一、填空题:

1. Oracle EnterpriseManager是一个基于 B/S的框架系统。

2.Oracle数据库的存储结构分为物理结构和逻辑结构。

3.在游标或者游标变量打开后还没有进行第一次提取时,%found属性为null。

4. 在oracle中已commit或rollback作为上一个事务的结束标志及下一个新事物开始的标志。

5. DML表示数据操作语言,主要的DML有SELECT,INSERT,UPDATE,DELETE.

6.索引的主要目标是提高访问的速度。

7.在Oracle database 10g 系统中,可以使用DBCA工具和CREATE DATEBASE命令两种方式创建数据库。

8. 命令Startup nomount只能启动数据库实例,但不能装载和打开数据库。

9.在输入URL进入Oracle Enterprice Manager Database Control 的时候,必须指出ip地址和端口号。

10.在登录Oracle Enterprice Manager Database Control时,连接身份有两种选择,分别为normal和sysdba。二、选择题:

1.当Oracle服务器启动时,下列哪种文件不是必须装入内存的()。D

A. 数据文件

B. 控制文件

C. 日志文件

D. 归档日志文件

2. 在Oracle中,当用户要执行SELECT语句时,下列哪个进程从磁盘获得用户需要的数据()。B

A.用户进程 B. 服务器进程 C. 日志写入进程(LGWR) D. 检查点进程(CKPT)

3. 在Oracle数据库的逻辑结构中有以下组件:A 表空间;B 数据块;C 区;D段;这些组件从大到小依次是()。B

A. A→B→C→D

B. A→D→C→B

C. A→C→B→D

D. D→A→C→B

4. ( B )可以从过程返回多个值。

A. 使用IN参数

B. 使用OUT参数

C. 使用指针

D. 不能

5.PL/SQL为内存耗尽时,预定义了( C )异常。

A. NO_DA TA_FOUND

B. MEMORY_ERROR

C. STORAGE_ERROR

D. NO_MEMEORY_FOUND

6. 一下是同义词不具有的用途是( D )。

A. 简化SQL语句

B. 隐藏对象的名称和所有者

C. 提供对对象的公共访问

D. 显示对象的名称和所有者

7. 在Windows操作系统中,Oracle的( A )服务监听并接受来自客户端应用程序的连接请求。

A. OracleHOME_NAMETNSListener

B. OracleServiceSID

C. OracleHOME_NAMEAgent

D. OracleHOME_NAMEHTTPServer

8. 在 Oracle 中创建用户时,若未提及 DEFAULT TABLESPACE 关键字,则 Oracle 就将( B )表空间分配给用户作为默认表空间。 A. USER B. SYSTEM C. SYS D. DEFAULT

9. 下列哪种Lob类型用来存储数据库以外的操作系统文件()。D A. CLOB B. BLOB C. CFILE D. BFile

10. Oracle的控制文件不包括以下哪些内容()。A

A. 数据库名称

B. 数据文件和日志文件的名称和位置

C. 时间戳

D. 服务器信息

11. 不属于Oracle的系统文件是()。D

A. 数据文件 DBF

B. 控制文件 CTL

C. 日志文件LOG

D. 归档文件ARC

12. 下列( D )不是PL/SQL过程和函数的参数模式。 A. In B. Out C. In Out D. Ref

13. 有语句如下:TYPE curtype IS REF CURSOR RETURN book.price%TYPE;表book的列price的数据类型是NUMBER(5);则( A )。

A. curtype 可以返回INTEGER类型数据,长度为5

B. curtype 可以返回INTEGER(5,2)类型数据

C. curtype 可以返回V ARCHAR2(5,2)类型数据

D. 以上都不对

14. 使用下列( B )将不能把Null值转换为实际值。

A. NVL

B. NVL2

C. NULLIF

D. To_number

15. 使用( D )数据类型时,数据部能存储在数据库内。 A. BLOB B. CLOB C. NCLOB D. BFILE

16. SCOTT用户对自己的表Test执行了以下命令:Lock table test in share mode 但没有执行COMMIT和ROLLBACK,此时用户System执行了命令:LOCK TABLE SCOTT.TEST IN share update MODE,将出现什么情况? ( )。B

A. 提示表已锁定

B. 正常执行

C. 出现等待状态,直到Scott用户释放锁

D. 以上都不正确

17. 关于“For update”子句和“For update of 字段”说法正确的是()。C

A. 没有区别

B. 前者只锁定当前表中的相关行,而后者锁定所有表的行

C. 前者锁定所有相关表中的行,而后者锁定当前表中的相关行

D. 以上说法均布正确

18. 下列哪些想不是Oracle中常用的分区方法?()。D A. 范围 B. 散列 C. 列表 D. 条件

19. 查看Test中名为P1的分区的分区中的记录的查询语句为()。C

A. Select * from Test Where PartitionName=’P1’

B. Select * from Test(P1)

C. Select * from Test Where PartitionName(P1)

D. 以上都不正确

20. 在Oracle中,下面哪条语句当COMM字段为空时显示0,不为空时显示COMM的值( A )。

A. SELECT ename, NVL(comm, 0) FROM emp;

B. SELECT ename, NULL(comm, 0) FROM emp;

C. SELECT ename, NULLIF(comm, 0) FROM emp;

D. SELECT ename, DECODE(comm, NULL, 0) FROM emp;

三、简答题

1. 简述CHAR与V ARCHAR2的区别?

答:(1) CHAR的长度是固定的,而V ARCHAR2的长度是可以变化的;(2) CHAR的效率比V ARCHAR2的效率稍高;(3) V ARCHAR2是Oracle自己开发了一个数据类型,这个类型不是一个标准的V ARCHAR,它将在数据库中varchar列可以存储空字符串的特性改为存储NULL值。

2.在PL/SQL程序设计中异常的抛出和处理是非常重要的内容。简述三种方式抛出异常的过程。

答:有三种方式抛出异常:

通过PL/SQL运行时;使用RAISE语句;调用RAISE_APPLICATION_ERROR存储过程。

3. 使用存储管理器可以管理哪些对象?简述利用它可以进行的操作。

答:使用存储管理器可以管理表空间、回滚段、数据文件和重做日志等存储对象。

(1) 创建存储对象;

(2) 将数据文件和回滚段添加到表空间中; (3) 删除存储对象;

五、综合题

1.在SQL>环境中完成下SQL列语句。

⑴取出Oracle的系统日期,利用SELECT语句将其转换为字符型并赋给某一变量。

SELECT To_char(sysdate,’yyyymmdd’) INTO a FROM DUAL; ⑵查看某表的创建时间。

select object_name,created from user_objects where object_name =

UPPER('&table_name')

⑶查看放在ORACLE的内存区里的表。

select table_name,cache from user_tables where instr(cache,'Y')>0;

⑷查看数据字典中函数的状态。

select object_name,status from user_objects where object_type='FUNCTION';

⑸使用表system.table1,写出SQL语句完成如下功能:在表中查出年龄大于20,且名字以“王”开头的记录,并且按照年龄的降序排列出来(年龄大的在前

2. 简述Oracle系统的体系结构

答:Oracle系统体系结构是整个Oracle服务器系统的框架,是管理和应用Oracle数据服务器的基础和核心。

⑴数据库实例:系统全局区和后台进程

⑵物理存储结构:参数文件、控制文件、数据文件、重做日志文件等;逻辑存储结构:表空间、段、盘区、数据块等

⑶内存结构:系统全局区域、程序全局区、用户全局区 3. 解释冷备份和热备份的不同点以及各自的优点。答:热备份针对归档模式的数据库,在数据库仍旧处于工作状态时进行备份。而冷备份指在数据库关闭后,进行备份,适用于所有模式的数据库。冷备份的优点在于它的备份和恢复操作相当简单,并且由于冷备份的数据库可以工作在非归档模式下,数据库性能会比归档模式稍好。(因为不必将archive log写入硬盘)

数据库及Oracle基础知识培训自学教材试题_V1 0

Oracle初级试题 一、选择题(20% 不定项每题2分) 1.对于Oracle用户方案下,根据模式/映像,请选出不属于模式的对象(D) A.表B.索引C.视图D.约束 2.在客户端配置哪个文件,可以使客户端访问oracle server?(A) A.tnsnames.ora B.sqlnet.ora C.listener.ora D.init.ora 3.搜索列中的数据,但只记得部分字符串,通常可以用以下哪种运算?(C) A.in B.between C.like D.exists 4.如从表中删除了一条记录,以下哪个语句可以保存数据库中的改变?(B) A.savepoint B.commit C.rollback D.update 5.下面关于视图的说法,请选出正确的(ABCD) A.一个视图可以创建为只读 B.一个视图可以用来连接两张或更多的表而被创建 C.在视图中不能含有order by子句 D.在视图中不能含有group by子句 6.在select语句中包含了where子句,请问group by子句可以放在哪里?(D) A.where子句前面 B.from子句前面 C.order by子句后面 D.where子句后面 7.关于having子句,以下说法正确的是:(C) A.having与where相同 B.having用于单行条件查询 C.having用于已分组的条件查询 D.having子句必须紧跟在where子句后面使用 8.能够在外部表上进行的操作有:(A) A.select B.update C.insert D.delete 9.在更改索引的操作(alter index)中,以下哪些子句可以定期优化索引?(AC) A.rename B.coalesce C.rebuild D.deallocate unused 10.请选出能够产生锁的操作:(AB) A.select … for update B.commit C.rollback D.lock table 二、填充题(20% 每空4分) 1.数据库最常用的DML操作有SELECT、UPDATE 、DELETE 和INSERT 等(要求写出操作命令)。 2.假设有两个数据N1和N2,请用函数实现如下算法:当N1>N2时,返回“大于”; 当N1=N2时,返回“等于”;当N1N2 then Return ‘大于’;

Oracle数据库的空间数据类型

Oracle数据库中空间数据类型随着GIS、CAD/CAM的广泛应用,对数据库系统提出了更高的要求,不仅要存储大量空间几何数据,且以事物的空间关系作为查询或处理的主要内容。Oracle数据库从9i开始对空间数据提供了较为完备的支持,增加了空间数据类型和相关的操作,以及提供了空间索引功能。 Oracle的空间数据库提供了一组关于如何存储,修改和查询空间数据集的SQL schema与函数。通过MDSYS schema规定了所支持的地理数据类型的存储、语法和语义,提供了R-tree空间数据索引机制,定义了关于空间的相交查询、联合查询和其他分析操作的操作符、函数和过程,并提供了处理点,边和面的拓扑数据模型及表现网络的点线的网络数据模型。 Oracle中各种关于空间数据库功能主要是通过Spatial组件来实现。从9i版本开始,Oracle Spatial空间数据库组件对存储和管理空间数据提供了较为完备的支持。其主要通过元数据表、空间数据字段(即SDO_GEOMETRY字段)和空间索引来管理空间数据,并在此基础上提供一系列空间查询和空间分析的函数,让用户进行更深层次的GIS应用开发。Oracle Spatial使用空间字段SDO_GEOMETRY存储空间数据,用元数据表来管理具有SDO_GEOMETRY字段的空间数据表,并采用R树索引和四叉树索引技术来提高空间查询和空间分析的速度。 1、元数据表说明。 Oracle Spatial的元数据表存储了有空间数据的数据表名称、空间字段名称、空间数据的坐标范围、坐标参考信息以及坐标维数说明等信息。用户必须通过元数据表才能知道ORACLE数据库中是否有Oracle Spatial的空间数据信息。一般可以通过元数据视图(USER_SDO_GEOM_METADATA)访问元数据表。元数据视图的基本定义为: ( TABLE_NAME V ARCHAR2(32), COLUMN_NAME V ARCHAR2(32), DIMINFO MDSYS.SDO_DIM_ARRAY, SRID NUMBER

oracle数据库基本命令

oracle数据库基本命令 oracle安装后 sys:超级管理员(dba),默认密码为:change_on_install system:系统管理员(dbaoper),默认密码为:manager; sys与system的不同在于sys能够create datebase而system则不能。scott:普通用户,默认密码:tiger 1.切换用户:conn 用户名/密码; SQL> conn system/manager; Connected to Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 Connected as system SQL> conn sys/change_on_install as sysdba; Connected to Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 Connected as SYS 注意:sys与其他用户在命令窗口切换时的不同。 2.修改密码:passw username;(普通用户可以修改自己密码,管理员可以修改其他人的密码) 3.显示当前用户。show user; 4.断开数据库同时推出:exit; 文件操作 5.运行sql脚本,start d:\a.sql; 6.编辑指定的sql脚本。Edit d:\a.sql; 7.将屏幕上指定的内容输出到指定文本中去。spool e:\b.sql;执行语句;spool off;

8.显示设置环境变量; 可以用来控制输出的各种格式,如果希望永久保存可以修改glogin.sql脚本。 Linesize(行宽): show linesize;显示行宽 set linesize 90;设置行宽为90个字符。 Pagesize(页面大小): Show pagesize;显示页面大小 Set pagesize 180;设置页面的小。 (做报表时可以用。一页设定几行。)

Oracle数据库数据对象分析_张达宇

Oracle数据库数据对象分析 日期:2006-01-18 08:00 点击: Oracle数据库数据对象中最基本的是表和视图,其他还有约束、序列、函数、存储过程、包、触发器等。对数据库的操作可以基本归结为对数据对象的操作,理解和掌握Oracle数据库对象是学习Oracle的捷径。 表和视图 Oracle中表是数据存储的基本结构。ORACLE8引入了分区表和对象表,ORACLE8i引入了临时表,使表的功能更强大。视图是一个或多个表中数据的逻辑表达式。本文我们将讨论怎样创建和管理简单的表和视图。 管理表 表可以看作有行和列的电子数据表,表是关系数据库中一种拥有数据的结构。用CREATE TABLE语句建立表,在建立表的同时,必须定义表名,列,以及列的数据类型和大小。例如: 这样我们就建立了一个名为products的表,关键词CREATE TABLE后紧跟的表名,然后定义了三列,同时规定了列的数据类型和大小。 在创建表的同时你可以规定表的完整性约束,也可以规定列的完整性约束,在列上普通的约束是NOT NULL,关于约束的讨论我们在以后进行。 在建立或更改表时,可以给表一个缺省值。缺省值是在增加行时,增加的数据行中某一项值为null时,oracle即认为该值为缺省值。 下列数据字典视图提供表和表的列的信息: . DBA_TABLES . DBA_ALL_TABLES . USER_TABLES . USER_ALL_TABLES . ALL_TABLES . ALL_ALL_TABLES . DBA_TAB_COLUMNS . USER_TAB_COLUMNS . ALL_TAB_COLUMNS 表的命名规则 表名标识一个表,所以应尽可能在表名中描述表,oracle中表名或列名最长可以达30个字符串。表名应该以字母开始,可以在表名中包含数

Oracle中无效数据库对象的处理方法

Oracle中无效数据库对象的处理方法 Oracle总是会尝试自动重编译无效的PL/SQL对象和视图,但是可能不会成功。虽然Oracle可能建议手动地进行编译,不过我们并非必须进行这个操作。通常无效对象的产生是由于数据库迁移,针对无效对象,我们可以采取重编译和索引重建。 1.1、标识无效的对象 为了标识数据库中的所有无效的对象,我们可以作为SYSTEM用户或其他有权限的用户做如下查询。 SQL> select owner, object_name, object_type from dba_objects where status = 'INVALID'; 1.2、修正无效的对象 编译对象 SQL> alter procedure ADD_NUMS compile; Procedure altered. 如果编译成功,就不存在问题,如果编译失败,就需要找出失败的原因。 SQL> show errors 如果希望确定编译错误的原因,通常需要首先使用DBA_DEPENDENCIES视图。 SQL> desc dba_dependencies; Name Null? Type ----------------------------------------- -------- --------------- OWNER NOT NULL VARCHAR2(30) NAME NOT NULL VARCHAR2(30) TYPE VARCHAR2(17) REFERENCED_OWNER VARCHAR2(30) REFERENCED_NAME VARCHAR2(64) REFERENCED_TYPE VARCHAR2(17) REFERENCED_LINK_NAME VARCHAR2(128) DEPENDENCY_TYPE VARCHAR2(4) 如果要重新编译成百上千的的无效对象,可以运行下面命令。 SQL> @?/rdbms/admin/utlrp --编译无效对象脚本utlrp.sql

ORACLE数据库学习心得

ORACLE数据库结课论文 一个好的程序,必然联系着一个庞大的数据库网路... 今年我们学习了oracle数据库这门课程,起初的我,对这个字眼是要多陌生有多陌生,后来上课的时候听一会老师讲课,偶尔再跟上上机课,渐渐的学会了不少东西,但我感觉,我学到的仍是一些皮毛而已,怀着疑惑和求知的心态,我在网上搜索了关于oracle数据库的一些知识。 1.ORACLE的特点: 可移植性ORACLE采用C语言开发而成,故产品与硬件和操作系统具有很强的独立性。从大型机到微机上都可运行ORACLE的产品。可在UNIX、DOS、Windows等操作系统上运行。可兼容性由于采用了国际标准的数据查询语言SQL,与IBM的SQL/DS、DB2等均兼容。并提供读取其它数据库文件的间接方法。 可联结性对于不同通信协议,不同机型及不同操作系统组成的网络也可以运行ORAˉCLE数据库产品。 2.ORACLE的总体结构 (1)ORACLE的文件结构一个ORACLE数据库系统包括以下5类文件:ORACLE RDBMS的代码文件。 数据文件一个数据库可有一个或多个数据文件,每个数据文件可以存有一个或多个表、视图、索引等信息。 日志文件须有两个或两个以上,用来记录所有数据库的变化,

用于数据库的恢复。控制文件可以有备份,采用多个备份控制文件是为了防止控制文件的损坏。参数文件含有数据库例程起时所需的配置参数。 (2)ORACLE的内存结构一个ORACLE例程拥有一个系统全程区(SGA)和一组程序全程区(PGA)。 SGA(System Global Area)包括数据库缓冲区、日志缓冲区及共享区域。 PGA(Program Global Area)是每一个Server进程有一个。一个Server进程起动时,就为其分配一个PGA区,以存放数据及控制信息。 (3)ORACLE的进程结构ORACLE包括三类进程: ①用户进程用来执行用户应用程序的。 ②服务进程处理与之相连的一组用户进程的请求。 ③后台进程ORACLE为每一个数据库例程创建一组后台进程,它为所有的用户进程服务,其中包括: DBWR(Database Writer)进程,负责把已修改的数据块从数据库缓冲区写到数据库中。LGWR(Log Writer)进程,负责把日志从SGA中的缓冲区中写到日志文件中。 SMON(System Moniter)进程,该进程有规律地扫描SAG进程信息,注销失败的数据库例程,回收不再使用的内存空间。PMON (Process Moniter)进程,当一用户进程异常结束时,该进程负责恢复未完成的事务,注销失败的用户进程,释放用户进程占用的资源。

Oracle数据库简介

oracle数据库是一种大型数据库系统,一般应用于商业,政府部门,它的功能很强大,能够处理大批量的数据,在网络方面也用的非常多。不过,一般的中小型企业都比较喜欢用SQL数据库系统,它的操作很简单,功能也非常齐全。只是比较oracle 数据库而言,在处理大量数据方面有些不如。 Oralce数据库的发展历程 Oralce数据库简介 Oracle简称甲骨文,是仅次于微软公司的世界第二大软件公司,该公司名称就叫Oracle。该公司成立于1979年,是加利福尼亚州的第一家在世界上推出以关系型数据管理系统(RDBMS)为中心的一家软件公司。 Oracle不仅在全球最先推出了RDBMS,并且事实上掌握着这个市场的大部分份额。现在,他们的RDBMS被广泛应用于各种操作环境:Windows NT、基于UNIX系统的小型机、IBM大型机以及一些专用硬件操作系统平台。 事实上,Oracle已经成为世界上最大的RDBMS供应商,并且是世界上最主要的信息处理软件供应商。由于Oracle公司的RDBMS都以Oracle为名,所以,在某种程度上Oracle己经成为了RDBMS的代名词。 Oracle数据库管理系统是一个以关系型和面向对象为中心管理数据的数据库管理软件系统,其在管理信息系统、企业数据处理、因特网及电子商务等领域有着非常广泛的应用。因其在数据安全性与数据完整性控制方面的优越性能,以及跨操作系统、跨硬件平台的数据互操作能力,使得越来越多的用户将Oracle作为其应用数据的处理系统。 Oracle数据库是基于“客户端/服务器”模式结构。客户端应用程序执行与用户进行交互的活动。其接收用户信息,并向“服务器端”发送请求。服务器系统负责管理数据信息和各种操作数据的活动。 Oracle数据库有如下几个强大的特性: 支持多用户、大事务量的事务处理 数据安全性和完整性的有效控制 支持分布式数据处理 可移植性很强 Oracle大体上分两大块,一块是应用开发,一块是系统管理。 开发主要是写存储过程、触发器什么的,还有就是用Oracle的Develop工具做form。有点类似于程序员,需要有较强的逻辑思维和创造能力。管理则需要对Oracle 数据库的原理有深刻的认识,有全局操纵的能力和紧密的思维,责任较大,因为一个小的失误就会丢失整个数据库,相对前者来说,后者更看重经验。 Oracle数据库服务器: Oracle数据库包括Oracle数据库服务器和客户端 Oracle Server是一个对象一关系数据库管理系统。它提供开放的、全面的、和集成的信息管理方法。每个Server由一个 Oracle DB和一个 Oracle Server实例组成。它具有场地自治性(Site Autonomy)和提供数据存储透明机制,以此可实现数据存储透明性。每个 Oracle数据库对应唯一的一个实例名SID,Oracle数据库服务器启动后,一般至少有以下几个用户:Internal,它不是一个真实的用户名,而是具有SYSDBA优

数据库基本知识(自己整理,初学者可以看一下,基于某MySql)

数据库

1常见数据库 1.1MySql : 甲骨文 1.2Oracle: 甲骨文 1.3SQL Server: 微软 1.4Sybase: 赛尔斯 1.5DB2: IBM 2MySql基础知识 2.1关系结构数据模型数据库 2.2SQL(Structured Query Language)结构化查询语言2.2.1DDL(Data Definition Language):数据定义语言,用来定义数据库对象:库、表、列等 操作数据库 CREATE DATABASE [IF NOT EXISTS]mydb1 USE mydb1 DROP DATABASE [IF NOT EXISTS] mydb1

ALTER DATABASE mydb1 CHARACTER SET utf8 操作表 插入表 CREATE TABLE stu( sid CHAR(6), sname VARCHAR(20), age INT, gender VARCHAR(10) ); 更改表 ALTER TABLE t_user ADD (student varcher(20)) ALTER TABLE t_user MODIFY gender CHAR(20) ALTER TABLE t_user CHANGE gender VARCHER(20) ALTER TABLE t_user REMANE genderTO genders ALTER TABLE t_user DROP gender 删除表 DROP TABLE t_user 2.2.2DML(Data Manipulation Language):数据操作语言,用来定义数据库记录(数据) 插入数据 INSERT INTO t_user VALUES() INSERT INTO 表名 VALUES(值1,值2,…)

oracle数据库操作手册

操作手册 目录 一.表空间 (4) 1.创建表空间 (4) 2.增加表空间 (4) 3.删除表空间 (5) 4.查询表空间状态 (5) 5.查询数据文件路径 (5) 6.移动表空间中数据文件的路径 (5) 7.移动表和索引到其他表空间 (6) 8.查看表空间的使用率 (7) 二.用户和权限 (9) 1.创建用户 (9) 2.修改用户的密码 (9) 3.给用户授权 (9) 4. 查询数据库系统上有多少用户,文件名和创建时间 (10) 三.归档和非归档模式 (10) 1.查看数据库的归档模式 (10) 2.修改数据库的归档模式 (10) 四.日志文件 (11) 1.查询日志文件信息 (11) 2.增加日志文件配置信息 (12) 3.增加日志成员 (12) 4.删除一组日志 (12) 五.密码文件 (13) 1.创建密码文件 (13) 六.参数文件(SPFILE PFILE) (13) 1.查看数据库使用参数文件(SPFILE 还是PFILE) (13) 2.创建SPFILE (13) 3.通过PFILE 启动数据库 (13) 七.STATSPACK (14) 1.安装STATSPACK (14) 2.数据采集 (14) 3.设置自动快照 (14) 4.设置数据采集的时间 (14) 八.ORACLE信息查询 (15) 1.查询ORACLE数据库的名字,创建日期 (15) 2. 查询ORACLE所在操作系统的主机名,实例名,版本 (15) 3.查询ORACLE数据库系统版本详细信息 (15) 九.控制文件 (16) 1.查询控制文件 (16) 2.备份控制文件 (16)

十.索引 (16) 1.创建普通索引 (16) 2.创建位图索引 (16) 3.查询索引所在的表,表空间,索引类型 (16) 4.查询索引所在的列 (17) 十一.主键 (17) 1.定义主键 (17) 2.查询主键索引 (18) 3.查询约束信息 (18) 4.禁止约束 (18) 5.开启主键 (19) 十二.手工建库脚本 (19) 十三..PROFILE文件内容 (19) 十四.做定时JOB (20) 1.创建存储过程,为此存储过程作定时JOB (20) 2.定时JOB 的参数说明 (21) 十五.查询出SQL语句 (22) 1.通过SID 找出HASH VALUE 值 (22) 2.通过HASH VALUE 值查询出SQL 语句 (22) 3.根据HASH VALUE 值查询出对应的 SESSLIN SID (22) 4.根据HASH VALUE 找出对应的机器名称 (22) 5.通过HASH VALUE 查询出该语句的执行计划 (23) 6.查询存储过程 (23) 7.查询对象属于哪个用户 (23) 8.查询表的分析时间 (23) 9.查询对象(表)的类型 (23) 十六.查询脚本 (24) 1.查询等待事件 (24) 2.查询大表已经索引超过2G 的对象 (24) 3.查看锁 (25) 十七.基本的SQL语句 (25) 1.对表的操作 (25) 2.常用的函数 (26) 十八.安装手册 (27) 十九.错误总结 (27) 1. ORA-00257: 归档程序错误 (27) 二十.故障处理 (29) 1.日志挖掘 (29) 2.行链接行迁移 (30) 3.逻辑备份(exp/imp) (35) 4.关闭和启动数据库的步骤 (36) 二十一.METALINK操作 (37) 1.开二级别SR (37) 2.OPATCH 下载地址 (37)

ORACLE数据库管理系统介绍

ORACLE 数据库管理系统介绍 的特点: 可移植性 ORACLE采用C语言开发而成,故产品与硬件和操作系统具有很强的独立性。从大型机到微机上都可运行ORACLE的产品。可在UNIX、DOS、Windows等操作系统上运行。可兼容性由于采用了国际标准的数据查询语言SQL,与IBM的SQL/DS、DB2等均兼容。并提供读取其它数据库文件的间接方法。 可联结性对于不同通信协议,不同机型及不同操作系统组成的网络也可以运行ORAˉCLE数据库产品。 的总体结构 (1)ORACLE的文件结构一个ORACLE数据库系统包括以下5类文件:ORACLE RDBMS的代码文件。 数据文件一个数据库可有一个或多个数据文件,每个数据文件可以存有一个或多个表、视图、索引等信息。 日志文件须有两个或两个以上,用来记录所有数据库的变化,用于数据库的恢复。控制文件可以有备份,采用多个备份控制文件是为了防止控制文件的损坏。参数文件含有数据库例程起时所需的配置参数。 (2)ORACLE的内存结构一个ORACLE例程拥有一个系统全程区(SGA)和一组程序全程区(PGA)。 SGA(System Global Area)包括数据库缓冲区、日志缓冲区及

共享区域。 PGA(Program Global Area)是每一个Server进程有一个。一个Server进程起动时,就为其分配一个PGA区,以存放数据及控制信息。 (3)ORACLE的进程结构ORACLE包括三类进程: ①用户进程用来执行用户应用程序的。 ②服务进程处理与之相连的一组用户进程的请求。 ③后台进程 ORACLE为每一个数据库例程创建一组后台进程,它为所有的用户进程服务,其中包括: DBWR(Database Writer)进程,负责把已修改的数据块从数据库缓冲区写到数据库中。LGWR(Log Writer)进程,负责把日志从SGA中的缓冲区中写到日志文件中。 SMON(System Moniter)进程,该进程有规律地扫描SAG进程信息,注销失败的数据库例程,回收不再使用的内存空间。PMON(Process Moniter)进程,当一用户进程异常结束时,该进程负责恢复未完成的事务,注销失败的用户进程,释放用户进程占用的资源。 ARCH(ARCHIVER)进程。每当联机日志文件写满时,该进程将其拷贝到归档存储设备上。另外还包括分布式DB中事务恢复进程RECO 和对服务进程与用户进程进行匹配的Dnnn进程等。 的逻辑结构 构成ORACLE的数据库的逻辑结构包括: (1)表空间

Oracle数据库基本知识点

1、数据库基本语句 (1)表结构处理 创建一个表:cteate table 表名(列1 类型,列2 类型); 修改表的名字 alter table 旧表名 rename to 新表名 查看表结构 desc 表名(cmd) 添加一个字段 alter table 表名 add(列类型); 修改字段类型 alter table 表名 modify(列类型); 删除一个字段 alter table 表名 drop column列名; 删除表 drop table 表名 修改列名 alter table 表名 rename column 旧列名 to 新列名; (2)表数据处理 增加数据:insert into 表名 values(所有列的值); insert into 表名(列)values(对应的值); 更新语句:update 表 set 列=新的值,…[where 条件] 删除数据:delete from 表名 where 条件 删除所有数据,不会影响表结构,不会记录日志, 数据不能恢复--》删除很快: truncate table 表名 删除所有数据,包括表结构一并删除: drop table 表名 去除重复的显示:select distinct 列 from 表名 日期类型:to_date(字符串1,字符串2)字符串1是日期的字 符串,字符串2是格式 to_date('1990-1-1','yyyy-mm-dd')-->返回日期的 类型是1990-1-1 (3)查询语句 1)内连接 select a.*,b.* from a inner join b on a.id=b.parent_id

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 )

浅谈对的理解对象—关系型数据库

浅谈对对象—关系型数据库的理解 姓名:杨小敏 学号:2010206190026

针对对象—关系型数据库的理解我想结合自己的专业(地图学与地理信息系统)从下面三个方面来理解:(1)关系型数据的发展以及在空间数据管理方面的优缺点(2)面向对象数据库的发展及在空间数据管理方面的优缺点(3)关系型数据库和面向对象技术的融合在数据库发展中所起到的独特作用在我们GIS专业领域内,随着信息技术的发展,各种应用系统建设的不断深入,像现在面向21世纪的应急应用系统的建设、城市基础地理空间信息数据库系统与共享平台的建设、地理信息公共服务平台的建设,小到“数字城市”的建设,大到“数字地球”乃至“智慧地球”的建设,我们已经开始不满足数值和文字的信息处理,为了达到系统建设平台尤其是公共服务平台的建设起到良好的客户友好体验,大量的图形信息,音频信息已经深入到数据库的设计中,其中尤其是空间数据库管理备受瞩目。所以,面对信息爆炸的21世纪,海量数据的存储和管路已经不是传统的数据库能解决的,空间数据管理需要更强的数据库——对象关系型数据库。 为什么空间数据需要对象关系型数据库的管理才更有效?我想简单的说一下GIS空间数据的基本特征:(1)空间特征:每个空间对象都具有空间坐标,所以在存储空间数据的同时我们要考虑数据的空间分布特征;(2)非结构化特征:通用数据库或者是传统数据库数据记录一般是结构化的,在面对空间图形信息的时候难以直接采用关系数据管理系统;(3)空间关系特征:空间数据的空间关系最重要的就是空间拓扑关系,这种拓扑结构方便了空间数据的查询和空间分析,但是给空间数据的一致性和完整性的维护增加了复杂性;(4)海量数据的特征:数据库在面对海量数据的存储和组织时,一般在二维空间上划分块或图幅,在垂直的方向上划分层在组织海量空间数据。 在空间数据的管理技术的发展中,从手工管理管理阶段到文件管理阶段再到数据库管理阶段,在三个数据管理阶段,对数据管理方式也不尽相同,在这里,我想说的是空间数据库的发展历史对空间数据管理的影响,第一是层次关系型数据库:只是数据库发展的初级阶段,这是空间数据的管理大多用文件方式管理,很显然不适合管理海量的空间数据,所以淘汰;第二是网络关系型数据库:在一定程度上解决了空间数据复杂管理的难题,但还是被日益崛起的关系型数据库所淘汰;第三是关系型数据库的发展:为了解决难于保证数据的完整性,开始将空

Oracle数据库试题

请将下列试题的正确答案写在答题栏里。(每小题2分) 1.当Oracle服务器启动时,下列哪种文件不是必须的()。 A.数据文件 B.控制文件 C.日志文件 D.归档日志文件 2.在Oracle中,当用户要执行SELECT语句时,下列哪个进程从磁盘获得用户需要的数据()。 A.用户进程 B.服务器进程 C.日志写入进程(LGWR D.检查点进程(CKPT) 3.在Oracle中,一个用户拥有的所有数据库对象统称为()。 A.数据库 B.模式 C.表空间 D.实例 4.在Oracle中,有一个教师表teacher的结构如下: ID NUMBER(5) NAME V ARCHAR2(25) EMAIL VARCHAR2(50) 下面哪个语句显示没有Email地址的教师姓名()。 A.SELECT name FROM teacher WHERE email = NULL; B.SELECT name FROM teacher WHERE email <> NULL; C.SELECT name FROM teacher WHERE email IS NULL; D.SELECT name FROM teacher WHERE email IS NOT NULL; 5.在Oracle数据库的逻辑结构中有以下组件: A 表空间 B 数据块 C 区 D 段 这些组件从大到小依次是()。 A.A→B→C→D B.A→D→C→B C.A→C→B→D D.D→A→C→B 6.在Windows操作系统中,Oracle的()服务监听并接受来自客户端应用程序的连接请求。 A.OracleHOME_NAMETNSListener

Oracle数据库期末复习知识点整理

基础知识 表3.2 Oracle数据类型

表3.3 XSB的表结构

操作表 创建表 CREATE TABLE [schema.] table_name ( column_namedatatype [DEFAULT expression] [column_constraint][,…n] [,…n] ) [PCTFREE integer] [PCTUSED integer] [INITRANS integer] [MAXTRANS integer] [TABLESPACE tablespace_name] [STORGE storage_clause] [CLUSTER cluster_name(cluster_column,…n)] [ENABLE | DISABLE ] [AS subquery] 【例】使用CRETE TABLE命令为XSCJ数据库建立表XSB,表结构参照表3.3。 打开SQL*Plus工具,以system方案连接数据库,输入以下语句: CREATE TABLE XSB ( XH char(6) NOT NULL PRIMARY KEY, XM char(8) NOT NULL, XB char(2) DEFAULT '1' NOT NULL, CSSJ date NOT NULL, ZY char(12) NULL, ZXF number(2) NULL, BZ varchar2(200) NULL ); 修改表 ALTER TABLE [schema.] table_name [ ADD(column_namedatatype [DEFAULT expression][column_constraint],…n) ] /*增加新列*/ [ MODIFY([ datatype ] [ DEFAULT expression ] [column_constraint],…n) ] /*修改已有列的属性*/ [ STORAGE storage_clause ] *修改存储特征*/ [ DROP drop_clause ] /*删除列或约束条件*/ 【例】使用ALTER TABLE语句修改XSCJ数据库中的表。

Oracle基础知识大全,

课程目标: 1. 了解数据库系统在项目开发中的地位 2. 了解目前主流数据库系统 3. 熟练掌握查询命令 4. 熟练掌握数据操作方式 5. 熟练使用数据库内置函数 6. 掌握pl/sql程序设计语法结构 7. 掌握视图 8. 掌握存储过程 9. 掌握用户自定义函数 10. 掌握触发器 了解: 1.数据库组件: 1.1 实施应用集群 1.2 Oracle OLAP 1.3 数据挖掘 1.4 应用程序接口 1.5 网络组件 1.6 SQL Plus 1.7 企业管理器OEM

2. 几个版本间的差异: 2.1 增加了服务器参数文件SPFILE 2.2 使用了OMF免去了手工管理数据库文件的繁琐 2.3 支持多种数据库块大小 2.4 会话可以自动调整PGA的大小 2.5 引入了列表分区 课程内容: 1. 操作数据之前的准备工作: 1.1. 要保证有一个数据库: 1.2. 要保证创建一个表空间 create tablespace hbjr datafile 'E:\dbs\hbjr.dbf' size 100M; 1.3. 要创建一个用户,用户默认的表空间就是你创建的表空间 create user hbjr identified by orcl default tablespace hbjr; //授权限: grant dba to hbjr; 1.4. 用户/密码登录:

2. 表名/列字段名起名规范: 2.1 使用常规字母和数字 2.2 长度不要超过30 2.3 表名/列名不能重复 2.4 不能使用oracle的保留字 3. 数据类型 3.1 char:定长,存储单位--字节(bite) 3.2 varchar2:变长,存储单位--字节 3.3 nchar:定长,存储单位--字符 3.4 nvarchar2:变长,存储单位--字符 3.5 date:日期类型,7个字节,存储着--世纪,年,月,日,时,分,秒 3.6 timestamp:日期类型,11个字节,存储着--世纪,年,月,日,时,分,秒,毫秒 3.7 number:数据类型(数值类型) 3.8 clob:大字段类型,适合存储纯文本信息(例如:*.txt 文件)

Oracle数据库技术课程学习大纲详细

《现代数据库技术》教学大纲 课程名称:《现代数据库技术》 课程编号:学时数:56 学分数:3.5 适应专业:计算机与信息学院所有专业 一、本课程的地位、任务和作用 现代数据库技术是计算机在数据处理应用领域中的主要内容和坚实基础;也是今后若干年内研究和应用的最活跃的分支之一。因此,信息管理、软件开发、计算机等专业的学生,特别是以应用为目标的学生都必须学习和具备数据库原理与应用的知识。本课程通过介绍Oracle数据库基本操作、体系结构与数据库基本管理使学生初步掌握大型数据库的基本原理,了解大型数据库的管理方法。了解大型数据库的管理方法,使学生熟练掌握Oracle数据库系统下的SQL语言运用及PL/SQL程序设计。 本课程是一门理论和实践相结合的课程,要求学生在完成本课程的学习以后,能够结合自己所熟悉的某一门高级语言和Oracle,开发出一个小型的数据库应用系统。 二、本课程的相关课程 本课程的先修课程为《计算机组成原理》,《离散数学》,《数据结构》,《计算机网络》及《数据库原理》等课程。 三、本课程的基本内容及要求 教学内容: 第一章数据库概述(2学时) 1、教学内容: 1.1数据库基础知识 1.2关系数据库系统 1.3 Oracle基础知识 (1)Oracle的发展历史 (2)Oracle的特点 第二章O racle体系结构(6学时) 1、教学内容: 2.1 Oracle 体系结构概述 2.2Oracle的存储结构 (1)物理存储结构 (2)逻辑存储结构 2.3Oracle的实例 (1)Oracle内存结构

(2)Oracle进程 2.4数据字典 2、教学重点:Oracle的物理结构、oracle实例、Oracle的逻辑结构 3、教学难点:数据库实例与进程 第三章O racle11g的安装(2学时) 1、教学内容: 3.1 Oracle 11g环境介绍 3.2Oracle 11g for Windows的安装 (1)安装Oracle 11g服务器 (2)Oracle 11g与Windows (3)安装Oracle 11g客户端 3.3 Oracle 11g 的卸载 2、教学重点:学会Oracle的安装 第四章O RACLE数据库管理工具及网络配置(2学时) 1、教学内容: 4.1 SQL*Plus命令 (1)设置SQL*Plus 运行环境 (2)常用SQL*Plus命令 (3)格式化查询结果 4.2 Oracle企业管理器 4.3 数据库配置助手 4.4 启动与关闭oracle实例 2、教学重点:学会使用SQL*Plus 第五章S QL语言基础(5学时) 1、教学内容: 5.1SQL简介 5.2SQL的基本语法 5.3数据查询语言 5.4数据操纵语言 5.5数据定义语言 5.6数据控制语言 5.7常用函数 5.8 事务处理 2、教学重点:数据查询语言、数据操纵语言、数据定义语言、数据控 制语言 3、教学难点:SQL的基本语法 第六章P L/SQL编程(8学时)(课本第6,7章) 1、教学内容: 6.1PL/SQL基础 (1)变量及声明 (2)数据类型 (3)表达式 (4)PL/SQL程序块结构 6.2PL/SQL控制结构

数据库基础知识试题

数据库基础知识试题 部门____________ 姓名__________ 日期_________ 得分__________ 一、不定项选择题(每题分,共30分) 1.DELETE语句用来删除表中的数据,一次可以删除( )。D A .一行 B.多行 C.一行和多行 D.多行 2.数据库文件中主数据文件扩展名和次数据库文件扩展名分别为( )。C A. .mdf .ldf B. .ldf .mdf C. .mdf .ndf D. .ndf .mdf 3.视图是从一个或多个表中或视图中导出的()。A A 表 B 查询 C 报表 D 数据 4.下列运算符中表示任意字符的是( )。B A. * B. % C. LIKE 5.()是SQL Server中最重要的管理工具。A A.企业管理器 B.查询分析器 C.服务管理器 D.事件探察器 6.()不是用来查询、添加、修改和删除数据库中数据的语句。D A、SELECT B、INSERT C、UPDATE D、DROP 7.在oracle中下列哪个表名是不允许的()。D A、abc$ B、abc C、abc_ D、_abc 8.使用SQL命令将教师表teacher中工资salary字段的值增加500,应该使用的命 令是()。D A、Replace salary with salary+500 B、Update teacher salary with salary+500 C、Update set salary with salary+500 D、Update teacher set salary=salary+500 9.表的两种相关约束是()。C

oracle数据库工作原理

oracle工作原理 (2007-05-18 08:47:40) 转载▼ 分类:计算机技术 第一篇Oracle架构总览 先让我们来看一张图 这张就是Oracle 9i的架构全图。看上去,很繁杂。是的,是这样的。现在让我们来梳理一下: 一、数据库、表空间、数据文件 1.数据库 数据库是数据集合。Oracle是一种数据库管理系统,是一种关系型的数据库管理系统。 通常情况了我们称的“数据库”,并不仅指物理的数据集合,他包含物理数据、数据库管理系统。也即物理数据、内存、操作系统进程的组合体。 数据库的数据存储在表中。数据的关系由列来定义,即通常我们讲的字段,每个列都有一个列名。数据以行(我们通常称为记录)的方式存储在表中。表之间可以相互关联。以上就是关系模型数据库的一个最简单的描述。 当然,Oracle也是提供对面象对象型的结构数据库的最强大支持,对象既可以与其它对象建立关系,也可以包含其它对象。关于OO型数据库,以后利用专门的篇幅来讨论。一般情况下我们的讨论都基于关系模型。 2.表空间、文件 无论关系结构还是OO结构,Oracle数据库都将其数据存储在文件中。数据库结构提供对数据文件的逻辑映射,允许不同类型的数据分开存储。这些逻辑划分称作表空间。

表空间(tablespace)是数据库的逻辑划分,每个数据库至少有一个表空间(称作SYSTEM表空间)。 为了便于管理和提高运行效率,可以使用一些附加表空间来划分用户和应用程序。例如:USER表空间供一般用户使用,RBS表空间供回滚段使用。一个表空间只能属于一个数据库。 每个表空间由同一磁盘上的一个或多个文件组成,这些文件叫数据文件(datafile)。一个数据文件只能属于一个表空间。在Oracle7.2以后,数据文件创建可以改变大小。创建新的表空间需要创建新的数 据文件。 数据文件一旦加入到表空间中,就不能从这个表空间中移走,也不能与其它表空间发生联系。 如果数据库存储在多个表空间中,可以将它们各自的数据文件存放在不同磁盘上来对其进行物理分割。在规划和协调数据库I/O请求的方法中,上述的数据分割是一种很重要的方法。数据库、表空间、文件之间的关系如下图所示: 二、数据库实例 为了访问数据库中的数据,Oracle使用一组所有用户共享的后台进程。此外,还有一些存储结构(统 称为System Gloabl Area,即SGA),用来存储最近从数据库查询的数据。数据块缓存区和SQL共享池(Shared SQL Pool)是SGA的最大部分,一般占SGA内存的95%以上。通过减少对数据文件的I/O次数,这些存储区域可以改善数据库的性能。 数据库实例(instance)也称作服务器(server),是用来访问数据库文件集的存储结构及后台进程的集合。一个数据库可以被多个实例访问(这是Oracle并行服务器选项)。实例与数据库的关系如下图所示: 决定实例大小及组成的参数存储的init.ora文件中(在9i中是spfile)。实例启动时需要读这个文件,并且在运行时可以由数据库管理员修改。对该文件的任何修改都只有在下一次启动时才启作用。实例的init.ora文件件通常包含实例的名字:如果一个实例名为orcl,那么init.ora文件通常被命名为initorcl.ora。另一个配置文件config.ora用来存放在数据库创建后就不再改变的变量值(如数据库的块 大小)。实例的config.ora文件通常也包含该实例的名字:如果实例的名字为orcl,则config.ora一般 将被命名为configorcl.ora。为了便于使用config.ora文件的设置值,在实例的init.ora文件中,该文件必须通过IFILE参数作为包含文件列出。

相关主题
文本预览
相关文档 最新文档