当前位置:文档之家› ORACLE 11g教程 数据库应用简明教程

ORACLE 11g教程 数据库应用简明教程

ORACLE 11g教程 数据库应用简明教程
ORACLE 11g教程 数据库应用简明教程

第二章

填空题

1.oracle数据库从存储结构上可以分为__物理存储结构____和__逻辑存储结

构___.

2.在oracle数据库中,_数据文件__是指存储数据库的文件,数据库中的所有

数据最终都保存在_数据文件_中。

3.Oracle数据库从逻辑存储结构上可以分为表空间、_段___、区、_块___。一

个数据库实例由多个表空间组成,一个表空间由多个__段__组成,一个__段__有多个区组成,一个区由多个__块__组成。

4.将日志缓冲区的日志信息写入日志文件的后台进程是__LGWR__,如果数据库

实例运行在归档模式下,则日志文件中的内容将会被__ARCn__进程写入归档日志。

5.oracle数据库的物理存储结构主要有数据库文件、__控制文件__和_日志文

件___这3种类型的文件组成。

6.如果一个服务器进程非正常终止,由oracle系统会使用__PMON__进程来释放

他所占用的资源。

7.oracle数据库中,段主要可以分为数据段、_索引段___、_临时段___和_回

退段___。

二、选择题

1.下面对数据库文件的叙述中,正确的是C

A、一个表空间只能对应一个人数据库文件

B、一个数据文件可以对应多个表空间

C、一个表空间可以对应多个数据库文件

D、数据库文件存储了数据库中的所的日志信息

2.下面对数据库逻辑存储结构叙述中,正确的是__AB__

A、一个数据库实例由多个表空间组成

B、一个人段由多个区组成

C、一个人区由多个段组成

D、一个人块由多个区组成

3.下面哪种后台进程用于将数据缓冲区中的数据写入数据文件?__B__

A、LGWR

B、DBWn

C、CKPT

D、ARCn

4.系统全局区包括下面那些区域?__ACD__

A、java池

B、软件代码区

C、数据缓冲区

D、日志缓冲区

5.解析后的sql语句会缓存到下面的SGA哪个区域中?_C___

A、java池

B、大型池

C、共享池

D、数据缓冲区

三、简答题

1.简述oracle物理存储结构中的数据文件、控制文件与重做日志文件的作用。答:

数据文件(Data File)是指存储数据库数据的文件

控制文件(Control File)是一个很小的二进制文件,用于描述和维护数据库的物理结构

重做日志文件(Redo Log File)是记录数据库中所有修改信息的文件,简称日志文件

2.简述oracle逻辑存储结构中的表空间、段、区、块之间的关系。

答:

表空间是Oracle中最大的逻辑存储结构,它与物理上的一个或多个数据文件相对应,每个Oracle数据库都至少拥有一个表空间,表空间的大小等于构成该表空间的所有数据文件大小的总和。一个或多个区组成一个段,所以段的大小由区的个数决定。不过,一个数据段可以包含的区的个数并不是无限制的,它由如下两个参数决定

3.简单介绍LGWR进程与ARCn进程的作用。

答:

LGWR(Log Writer,日志写入)进程,是负责管理日志缓冲区的一个后台进程,用于将日志缓冲区中的日志数据写入磁盘的日志文件中

ARCn(Archive Process,归档)进程,用于将写满的日志文件复制到归档日志文件中,防止日志文件组中的日志信息由于日志文件组的循环使用而被覆盖。

4.如果想要了解数据库中所有的表的信息,应使用那种数据字典?

答:

dba_tables数据字典

5.DBWn进程所采用的LRU算法应该怎样理解

LRU算法是数据缓冲区的一种管理机制,只保留最近的数据,不保留旧数据,所以DBWn进程可以使用LRU算法将最近使用的数据块保留在内存中。

3.5习题

一、填空题

1.查看表结构时,所使用的命令是__ DESCRIBE ___,该命令可以简写为___ DESC _____。

2.使用SQL*Plus语句块编辑SQL语句时,可以使用的命令有APPEND(可以简写为A)命令、__ CHANGE ___(可以简写为C)命令、__ INPUT ___(可以简写为I)命令、___ LIST _____(可以简写为L)命令,以及RUN(可以简写为R)命令。

3.在SQL*Plus工具中,可以使用SAVE命令将缓冲区内容保存到文件;可以使用___ START ____命令读取并运行文件内容;可以使用___ EDIT ____命令编辑缓冲区内容或文件内容;还可以使用SPOOL命令复制输出结果到文件。

4.在SQL语句中,如果在某个变量前面使用了&符号,那么就表示该变量是一个临时变量,定义变量,可以使用___ DEFINE ____或ACCEPT命令;删除变量,可以使用UNDEFINE命令。

5. 在SQL*Plus中格式化查询结果时,COLUMN命令可以格式化对列的显示效果,PAGESIZE命令可以__设置一页显示多行数据____,LINESIZE命令可以__设置一行显示多少个字符___。

6.创建简单报表时,使用___ TTITLE ____命令和____ BTITLE ____命令,分别为报表设置页眉和页脚信息。

二、选择题

1. 在SQL*Plus中链接数据库时,可以使用CONNECT命令。下面的4个选项中,哪几个命令是正确的?其中,用户名为scott,密码为tiger,数据库名为orcl。____D________

A.CONNECT scott/tiger;

B.CONNECT tiger /scott;

C.CONN scott/tiger as sysdba;

D.CONN scott/tiger@orcl as sysdba;

2.执行语句SAVE scott_emp_query.sql APPEND,执行结果表示_____C_____。

A.如果scott_emp_query.sql文件不存在,则出现错误

B.如果scott_emp_query.sql文件已经存在,则出现错误

C.将缓冲区中的内容追加到scott_emp_query.sql文件中,如果该文件不存在,会创建该文件

D.将缓冲区中的内容替换掉 scott_emp_query.sql文件的内容,如果该文件不存在,会创建该文件

3.使用SQL*Plus中的____B_______,可以将文件中的内容检索到缓冲区,并且不执行。

A.SAVE命令

B.GET命令

C.START命令

D.SPOOL命令

4.下面是有关变量的描述,请问哪些描述是正确的?_____C__________

A.临时变量是指仅在某个SQL语句中有效的变量

B.临时变量实在某个会话期间有效的变量

C.已定义变量是指明确定义,其生命期至显式地删除、重新定义或退出SQL*Plus 为止

D.已定义的变量是不能被删除的

5.如果希望控制列的显式格式,那么可以使用下面的____D____________命令

A.SHOW

B.DEFINE

C.SPOOL

D.COLUMN

三、简答题

1.使用DESCRIBE命令,查看scott用户的dept表的结构信息。

答:DESCRIBE scott.dept;

2.使用SAVE命令将缓冲区内容写入到e:\test.sql文件中;然后使用START命令将文件中的内容读入到缓冲区,并且进行执行。

答:SAVE e:\test.sql;START e:\test.sql;

3.执行下列语句,观察输出结果;

DEFINE temp=5000

SELECT empno ,ename,mgr

FROM scott.emp

WHERE sa1>=&temp;

答:输出结果为:

员工编号员工姓名上级编号

7839 KING

4.对 scott用户的emp表的输出信息进行格式设置,其中,empno列设置标题为“员工编号”,NUMBER格式为9999;ename列设置标题为“员工名称”,格式设置为25个;hiredate列设置标题为“受雇日期”,并且标题居中显示。答:COLUMN empno HEADING ‘员工编号’ FORMAT 9999

COLUMN ename HEADING ‘员工姓名’ FORMAT A25

COLUMN hiredate HEADING ‘受顾日期’ JUSTIFY GENTER

SELECT empno , ename , hiredate

FROM scott.emp ;

5.设置一页显示30行数据,并且设置一行显示130个字符,然后输出scott用户的emp表的全部信息。

答:SET PAGESIZE 30

SET LINESIZE 130

SELECT * FROM scott.emp;

Oracle第四章课后习题以及答案

一、填空题

1.在创建永久性性表空间是,需要使用datafile关键字指定其数据文件,而如

果是创建临时表空间时,则应该使用___关键字为其指定临时文件。

(TEMPFILE)

2.表空间的状态属性主要有ONLINE__ , ___和__。(OFFLINE,READ ONLY,.READ

WRITE)

3.数据文件的状态属性主要有ONLINE ___和__。(OFFLINE,OFFLINE DROP)

4.创建临时表空间需要使用TEMPORARY关键字,创建大文件表空间需要使用___

关键字,创建撤销表空间需要使用___关键字。(BIGFILE,UNDO)

5.oracle中用户默认的永久表空间为___,默认的临时表空间为temp。(users)

6.oracle中管理撤销表空间的方式有回退段撤销管理和____。(自动撤销管理) 二、

1、下面那些不属于表空间的状态属性(CD)

A.ONLINE

B.OFFLINE

C.OFFLINE DROP

D.READ

2.将表空间的状态切换为OFFLINE时,可指定下面那种切换方式(ABD)

A.NORMAL

B.IMMEDIATE

C.TEMP

D.FOR RECOVER

3.在表空间space中没有存储任何数据,现在删除该表,并同属删除其对应的数据文件,可使用下面哪条语句(C)

A.DROP TABLESPACE space;

B.DROP TABLESPACE space INCLUDING DATAFILE;

C. .DROP TABLESPACE space INCLUDING CONTENTS AND DATAFILE;

D. DROP TABLESPACE space AND DATAFILE;

4.使用下列语句创建一个临时空间表temp

CREATE___TABLESPACE space

_____’‘F:\oraclefile\temp.dbf’

SIZE 10MB

AUTOEXTEND ON

NEXT 2M

MAXSIZE 20M;

从下面的选项中中选择正确的关键字补充上面的语句(C)

A.(不填)、DATAFILE

B.TEMP、TEMPFILE

C.TEMPORARY、DATAFILE

D. .TEMP、DATAFILE

5.将临时表空间设置temp设置为临时表空间的正确语句为(B)

A.ALTER DATASPACE DEFAULT TABLESAPCE temp;

B.ALTER DATASPACE DEFAULT TEMPORARY TABLESAPCE temp;

C. ALTER DEFAULT TEMPORARY TABLESAPCE TO temp;

D. ALTER DEFAULT TABLESAPCE TO temp;

6.如果当前数据库实例中有一个临时表空间里组group1,该组中有一个临时表空间temp1,先使用下列语句修改temp1表空间所在组为 group2:

ALTER TABLESPACE temp1 TABLESPACE GROUP group2;

对执行上述语句说法正确的是(BD)

A.由于数据中不存在group2组,因此执行将失败

B.上属语句执行成功,temp2表空间将被移动到group2组中

C.执行上述语句后,数据库实例中将存在两个临时表空间组:group1和group2

D. .执行上述语句后,数据库实例中将只存在一个临时表空间组:group2

三、简答题

1.表空间的状态有哪几种,它们分别表示什么意思?

答:

表空间的状态分别有如下几种:

1) 在线(ONLINE):当表空间的状态为ONLINE时,才允许访问该表空间中的数据。

2) 离线(OFFLINE):当表空间状态为OFFLINE时,不允许访问该表空间中的数据。

3) 只读(READ ONLY):当表空间的状态为READ ONLY时,虽然可以访问表空间中的数据,但访问仅仅限于阅读,而不能进行任何更新或删除操作。

4) 读写(READ WRITE):当表空间的状态为READ WRITE时,可以对表空间进行正常访问,包括对表空间中的数据进行查询、更新和删除等操作。

2.如果初始化参数为db_block_size的值为16KB,那么还能设置

db_16k_cache_size的参数的值么?请结合本章的学习内容,创建一个非标准数据块表空间,并简述其步骤。

答:

不能。

(1)使用SHOW PARAMWTER 语句查看数据缓冲区参数db_16k_cache_size 的值: SHOW PARAMWTER db_16k_cache_size

(2)使用ALTER SYSTEM 语句修改参数db_16k_cache_size 的值:

ALTER SYSTEM SET db_16k_cache_size=20M;

(3)创建表空间 non,指定其数据块大小为16KB:

CREATE TABLESPACE non

DATAFILE ‘F:\ORACLE\non.dbf’

SIZE 5M

BLOCKSIZE 16K;

3在实际应用中,需要临时创建一个表来使用,那么是否可以将该表创建在临时表空间中?

答:不需要,如果是创建临时表的话,一般如果内容部是很大不会有很明显的影响,而且使用完之后系统会自动删除临时表。

4在oracle中,对表空间的使用与管理非常重要。请创建一个表空间,然后对表空间的数据文件进行增加,删除和移动等管理,巩固本章所学的知识。

答:

创建表空间:(创建永久性表空间 myspace)

CREATE TABLESPACE myspace

DATAFILE ‘E:\myspace.dbf’

SIZE 20M

AUTOEXTEND ON NEXT 50M

MAXSIZE 100M;

在表空间中增加数文件:(myspace表空间中在增加E:\目录下增加一个数据文件,名为myspace01.dbf)

ALTER TABLESPACE myspace

ADD DATAFILE

‘E:\myspace01.dbf’

SIZE 10M

AUTOEXTEND ON NEXT 5M

MAXSIZE 70;

删除表空间中数据文件:(删除myspace表空间数据文件E:\myspace01.dbf)ALTER TABLESPACE myspace

DROP DATAFILE ‘E:\myspace01.dbf’;

移动表空间中数据文件:(将myspace01.dbf从目录‘E:\’移到目录‘F:\’) ALTER TABLESPACE myspace

RENAME DATAFILE ‘E:\myspace01.dbf’

TO ‘F:\myspace01.dbf’

一、填空题:

1.按照约束的用途,主要可以将表的完整性约束分为NOT NULL约束、

_____UNIQUE约束_______、__PRIMARY KEY约束__________、___CHECK约束_________和__FOREIGN KEY约束__________。

2.使用____TRUNCATE________关键字,可以快速删除表中的所有记录,并且不

在撤销表空间中记录撤销数据。

3.___NOT NULL_________约束用于定义列中不能出现NULL值,

___UNIQUE_________约束用于定义列中不能出现重复值,而PRIMARY KEY约束则可以定义列中既不予许出现NULL值,也不允许出现重复值。

4.如果要清除索引中的存储碎片,可以对索引进行合并或___重建_________。视图中的列并不都支持DML操作,通过数据字典

__user_updatable_columns__________可以了解视图中那些列是可更新的。5.使用__currval__________可以获取序列的当前值,使用

____nextval________可以获取下一个值。

二、选择题:

1.存储数据123.45,可以使用下面哪种数据类型?____AD________

A.NUMBER

B.NUMBER(5)

C.NUMBER(5,3)

D.NUMBER(5,2)

2.如果某列定义了UNIQUE约束,则____AD________

A.该列不允许出现重复值。

B.该列不允许出现NULL值。

C.该列内允许出现一个NULL值。

D.该列允许出现多个NULL值。

3.为定义一个CHECK约束,希望该约束能对表中已存储的数据,以及以后向表

中添加或修改的数据都进行检查,则应该将该约束设置为如下哪种状态?

____A________

A.ENABLE VALIDATE

B.ENABLE NOVALIDATE

C.DISABLE VALIDATE

D.DISABLE NOVALIDATE

4.使用如下语句创建一个视图:

CREATE VIEW test_view AS

SELECT stu.studname,stu.stuage+1 newage,cla.claname

FROM student stu LEFT JOIN class cla ON stu.claid=cla.claid;

请问test_view视图中那些列是可更新的?____A________

A.stuname

B.stuname、newage

C.stuname、claname

D.stuname、newage、claname

5.如果创建一个序列,用于为表的主键列生成主键值,则创建该序列时不应该指定以下哪种参数?___D_________

A.MAXVALUE 1000

B.MINVALUE 10

C.CACHE 10

D.CYCLE

6.如果在创建序列时指定其CACHE参数值为10,当序列的当前值为5时,数据库突然关闭,再次运行数据库后,序列将从以下哪个值开始?__C________

A.5

B.6

C.11

D.16

三、简答题:

1.比较VARCHAR2与CHAR两种数据类型的区别,并举例说明分别在什么情况下使用这两种数据类型。

答:CHAR的长度是固定的,VARCHAR2的长度是可以变化的,VARCHAR2比CHAR节省空间,在效率上比CHAR会稍微差一些

2.创建一个表后,为表中的某列添加CHECK约束,并分别设置该约束的状态为4中不同的状态,比较这4中状态下的约束检查效果。

答:

3.如果经常需要使用如下语句查询employee表中的员工信息:

SELECT * FROM WHERE SUBSTRB(ename,0,2)=’李’;

那么应该为ename创建什么索引,如何创建?

答:创建一个带有SUBSTRB函数的基于函数的索引

create index emp_ename_SUBSTRB on eemp

( SUBSTRB(ename,0,2) );

这样在执行上面的查询语句时,这个基于函数的索引将排上用场,执行计划将是(INDEX RANGE SCAN)。

4.如果对视图的基表进行结构上的改动,将会影响视图的可用性。请基于一个表创建一个视图,在视图的子查询语句中使用*查询基表的所有列,然后对该表进行结构修改,例如增加列、删除列、修改列名等,测试不同情况下视图的可用性,并思考其中的原因。

答:

5.思考在实际应用中使用同义词的好处:

答:一:应用程序开发可以不管数据库的具体对象名

二:避免应用程序直接访问数据库对象,提高数据库安全性

三:简化数据库对象的访问。

一、填空题

1.备份控制文件主要有两种方式:和备份成脚本文件。

2.通过数据字典v$datafile可以产看数据文件信息,通过数据字典

可以查看控制文件信息,通过数据字典可以产看日志文件信息。

3.Oracle数据库的运行模式有归档模式和模式两种,Oracle数据库默认为非归档模式,数据库管理员可以执行语句,将数据库的运行模式的运行模式设置为归档模式。

4.如果在创建控制文件时使用了RESRTLOGS选项,则应该执行语句打开数据库。

5.使用ALTER SYSTEM语句修改参数值时,可以使用SCPOE选项,该选项有

MEMORY、和 3个可选值。

二、选择题

1.下面对日志文件及其成员叙述正确的是。

A.日志文件组中可以没有日志成员

B.日志文件组中的日志成员大小一致

C.在创建日志文件组时,其日志成员可以是已经存在的日志文件

D.在创建日志文件组时,如果日志成员已经存在,则使用REUSE关键字就一定可以成功替换该文件

2.当日志文件组处于哪种情况时,无法清空该日志文件组?

A.ACTIVE

B.INACTIVE

C.CURRENT

D.UNUSED

3.下面哪条语句用于切换日志文件组?

A.ALTER DATABASE SWITCH LOGFILE;

B.ALTER SYSTEM SWITCH LOGFILE;

C.ALTER STSTEM ARCHIVELOG;

D.ALTER DATABASE ARCHIVELOG;

4.删除日志文件组5种的日志文件E:\orcl\datafile\redo0

5.log,其中正确的语句是。

A.ALTER DATABASE DROP LOGFIL’E:\orcl\datafile\redo05.log’;

B.ALTER DATABASE DROP LOGFILE GROUP 5’E:\orcl\datafile\redo05.log’;

C.ALTER DATABASE DROP KOGFILE MEMBER’E:\orcl\datafile\redo05.log’;

D.ALTER GROUP 5DROP LOGFILE’E:\orcl\datafile\redo05.log’;

5.修改系统中的参数值时,如果只修改服务器参数文件中的设置,则SCOPE选项的值应该为。

A.SPFILE

B.MEMORY

C.BOTH

D.以上都不对

三、简答题

1.控制文件在数据库中有什么作用?在创建控制文件时应该注意哪些问题?

2.日志文件组中的日志成员大小应该一致吗?为什么?

3.日志文件组有哪几种状态,它们分别表示什么含义?

4.简述清空日志文件组以及删除日志文件组或日志成员时应该注意哪些问题。

5.件数归档模式与非归档模式的区别。

答案:

一、填空题

1.备份为二进制文件

2.v$controlfile、v$logfile

3.ALTER DATABASE ARCHIVELOG

4.ALTER DATABASE OPEN RSEETLOGS

5.SPFILE、BOTH

二、选择题

1.B

2.C

3.B

4.C

5.A

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

2.WHERE子句可以接收FROM子句输出的数据;而HAVINGZ子句可以接收来FROM,WHERE或ORDER BY子句的输出的数据。

3.在SELECT语句中,分组条件的子句是GROUP BY,对显示的数据进行排序的子句ORDER BY。

4.在DML语句中,INSERT语句可以实现插入记录,UPDATE语句可以实现更新记录,DELETE语句和TRUNCATE语句可以实现删除记录。

5.CHR函数可以返回某个数值的ASCII值,ASCII函数可以反悔某个ASCII值对应的十进制数。

6.使用TO_CHAR函数,可以把数字或日期类型的数据转换成字符串;使用TO_DATE 函数,可以把字符串转换成日期数据,默认的日期格式为DD-MON-YY。

二、选择题

1.查询scott用户的emp表中的总记录数,可以使用下列哪个语句?BD

A.SELECT MAX(empno) FROM scott.emp;

B.SELECT COUNT(empno) FROM scott.emp;

C.SELECT COUNT(comm) FROM scott.emp;

D.SELECT COUNT(*) FROM scott.emp;

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

A.ALL

B.DISTINCT

C.UPDATE

D.MERGE

3.在SELECT语句中,HAVING子句的作用是。B

A.查询结果的分组条件

B.组的筛选条件

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

D.对结果集进行排序

4.下列哪个聚合函数可以把一个列中的所有值相加求和?D

A.MAX函数

B.MIN函数

C.COUNT函数

D.SUM函数

5.如果要统计表中有多少行记录,应该使用下列哪个聚合函数?C

A.SUM函数

B.AVG函数

C.COUNT函数

D.MAX函数

三、简答题

1.标准SQL语言的语句类型可以分为哪三大类,每种语句类型分别用来操纵哪些语句?

2.列举几个在WHERE条件中可以使用的操作符。

3.如果要按照降序对数据进行排序,应该在ORDER BY子句中使用哪个关键字?

4.下面这个SELECT语句能否输出查询结果?如果不能,该如何修改?

SELECT empno , ename . deptno , COUNT(*)

FROM scott.emp0

GROUP BY deptno ;

5.指定一个日期值,例如 08-8 月 -2008,获得这个日期与系统当前日期之间相隔的月份数和天数。

8.5习题

一.填空题

1.在SELECT语句的WHERE子句中可以使用子查询,表示将子查询返回的结果作为外部的WHERE条件。

2.在子查询的SELECT语句中,可以指定FROM子句、 WHERE 子句、 GROUP BY 子句和HAVING子句等,但是有些情况下不能指定 ORDER BY 子句。

3.使用IN操作符实现指定匹配查询;使用 ANY 操作符实现任意匹配查询;使用 ALL 操作符实现全部匹配查询。

4.在关联子查询中可以使用 EXISTS 或 NOT EXISTS 关键字。

5.常用的表的链接类型有 INNER JOIN (内连接)、 OUTER JOIN (外连接) CROSS JOIN (交叉连接)。

6.集合运算符 UNION 实现了集合的并运算;集合运算符INTERSECT实现了对集合的交运算;而集合运算符 MINUS 则实现了集合的减运算。

二.选择题

1.下面哪些语句在执行时不会返回错误信息,而显示检索结果? BD

A.SELECT empno , ename FROM scott.emp WHERE deptno = ( SELECT deptno FROM scott.dept WHERE dname NOT IN (‘SALES’) );

B.SELECT empno , ename FROM scott.emp WHERE deptno = ( SELECT deptno FROM scott.dept WHERE dname IN (‘SALES’) ) ;

C.SELECT empno , e.deptno , dname FROM scott.emp e , scott.dept d ;

D.SELECT empno , deptno, dname FROM scott.emp , scott.dept ;

2.使用关键字进行子查询时, D 关键字只注重子查询是否返回行。如果子查询返回一个或多个行,那么将返回真,否则为假。

A.IN

B. ANY

C. ALL

D. EXISTS

3.使用简单链接查询两个表,其中一个表有5行记录,另一个表有28行记录。如果未使用WHERE子句,则将返回多少行? D

A. 33

B. 23

C. 28

D. 140

4. C 为具有相同名称的列字段进行记录匹配,不必指定任何同等链接条件。

A.等值连接

B. 不等连接

C. 自然连接

D. 交叉连接

5.SQL/92标准可以使用USING关键字来简化连接查询,但是只有在查询满足下面的 AB 条件时,才能使用USING关键字来简化。

A.查询必须是等值连接

B.等值连接中的列必须具有相同的名称和数据类型

C.FROM子句应当包括所有的表名

D.如果在连接查询时使用了两个表中相同的多个列,那么就可以再USING子句中指定多个列名

三.简答题

1.子查询有哪3种子类型?

答:子查询有下面3种子类型:

○1多列子查询:向外部的SQL语句返回多列。

○2关联子查询:引用外部的SQL语句中的一列或多列。

○3嵌套子查询:在子查询中包含有子查询。

2.对scott用户的emp进行操作,在SELECT语句中使用子查询,获得每个部门中工资最高的员工信息。

答:

SQL>SELECT empno , ename , sal , deptno , dname FROM scott.emp outer

2 WHERE sal = (SELECT MAX(sal) FROM scott.emp inner

3 WHERE inner.deptno = outer.deptno);

3.外连接(OUTER JOIN)可以分为哪3种类型?

○1左外连接

○2右外连接

○3全外连接

4对scott用户的emp表和dept表进行操作,使用内连接(INNER JOIN)方式,检索sales部门的员工信息。

答:

SQL>SELECT empno , ename , sal , d.deptno , dname

2 FROM scott.emp e INNER JOIN scott.dept d ON e.deptno = d.deptno

3 WHERE dname = ‘sales’;

5.在进行集合操作时,使用哪些操作符,分别获取两个结果集的并集、交集和差集?

答:分别是UNION,INTERSECT,MINUS.

9.8 习题

一、填空题

1. PL/SQL程序块一般包括DECLARE部分、BEGIN…END部分和部分。

2. PL/SQL程序块中的赋值符号位。

3. 在声明常量时需要使用关键字,并且必须为常量赋初始值。

4. 使用游标一般分为声明游标、、和关闭游标这几个步骤。

5. 如果程序的执行部分出现异常,那么程序将跳转到部分对异常进行处理。

二、选择题

1. 下面哪些是合法的变量名?

A. _number01

B. number01

C. number-01

D. number

2. 使用下列哪条语句可以正确地声明一个常量?

A. name CONSTANT VARCHAR2(8);

B. name VARCHAR2(8) :=’CANDY’;

C. name VARCHAR2(8) DEFAULT ‘CANDY’;

D. name CONSTANT VARCHAR2(8) :=’CANDY’;

3. 有如下PL/SQL程序块:

SQL> DECLARE

2 a NUMBER := 10 ;

3 b NUMBER := 0 ;

4 BEGIN

5 IF a > 2 THEN

6 b :=1;

7 ELSIF a > 4 THEN

8 b := 2 ;

9 ELSE

10 b := 3 ;

11 END IF ;

12 DBMS_OUTPUT.PUT_LINE (b) ;

13 END ;

执行上述PL/SQL块后的输出结果为

A. 0

B. 1

C. 2

D. 3

4. 有如下PL/SQL程序块:

SQL> DECLARE

2 i BINARY_INTEGER := 1 ;

3 BEGIN ;

4 WHILE i >= 1 ;

5 LOOP

6 i := i + 1 ;

7 DBMS_OUTPUT.PUT_LINE (i) ;

8 END LOOP ;

9 END ;

执行上述PL/SQL 块,结果为

A. 输出从1开始,每次递增1的数

B. 输出从2开始,每次递增1的数

C. 输出2

D. 该循环将陷入死循环

5. 使用游标的什么属性可以获取SELECT语句当前检索到的行数?

A. %FOUND

B. %NOTFOUND

C. %ISOPEN

D. %ROWCOUNT

6. 下列不属于IF条件语句中的关键字是

A. ELSEIF

B. ELSE IF

C. OTHERS

D. THEN

三、简答题

1. 简述常量与变量在创建与使用时的区别。

2. 假设 student表中有如下字段:sid(主键列)、sname(姓名)和sscore (成绩),请问使用SELECT语句查询student 表中的学生信息时,如何显示每个学生的成绩所属的级别?示例查询结果如下:

Sid sname sscore 级别

------------- ------------- ------------- ------------

1 李云 91 优秀

2 王小静 87 良好

···

3. 使用%ROWTYPE与自定义记录类型,都可以定义存储一行数据的变量,请比较它们的区别。

4. 条件语句与循环语句都可以多层嵌套,请编写一段PL/SQL程序,实现如下输出效果:

*

***

*****

*******

*********

5. 假设表test中只有一个id 列,其数据如下:

SQL> SELECT * FROM test ;

ID

----------------

` ` `

800

800

1000

1000

500

` ` `

现在需要将id 列中800的值修改为1000,1000的值修改为800。请问,使用普通的UPDATE语句能实现吗(提示:使用rowid列,它是Oracle提供的唯一标识数据行的列)?如果使用游标,又应该怎样实现?

6. 自定义异常主要用于实现业务逻辑规范,请列举部分在实际应用中需要创建自定义异常的情况,并思考如何在PL/SQL中处理该异常。

答案

一、填空题

1.EXCEPTION

2.:=

3.CONSTANT

4.打开游标、检索游标

5.EXCEPTION

二、选择题

1. B

2. D

3. B

4. D

5. D

6. ABC

三、简答题

略。

第十章习题

一、填空题

1.创建存储过程需要使用CREATE PROCEDURE语句,使用存储过程可以使用

________________或者EXECUTE命令。

2.存储过程中有3种参数模式,分别为IN、_____________和________________。3.下面是创建存储过程的语句,该过程用于根据某学生ID(studentid)返回学生姓名(studentname):

CREATE PROCEDURE stu_pro

( stu_id IN NUMBER,stu_name OUT VARCHAR2) AS

BEGIN

SELECT studentname INTO__________________

FROM student WHERE studentid =_____________________;

END stu_pro;

请将上述的语句补充完整,并完成下面的过程调用等语句:

VARIABLE stu_name VARCHAR2(10);

EXEC stu_pro(1003,____________);

SELECT _______________FROM student;

4.Oracle 中触发器主要有___________________、__________________、系统触发器和______________________。

5.如果要创建行级触发器,则应该在创建触发器的语句中使用_____________子句。

6创建包规范需要使用CREATE PACKAGE 语句,创建包体需要使用

___________________语句。

二、选择题

1.假设有存储过程add_student,其创建语句的头部内容如下:

CREATE POCEDURE add_student(stu_id IN BUMBER,stu_name IN

VARCHAR2………)

请问下列调用该存储过程的语句中,正确的是__________。

A.EXEC add_student(1001,’CANDY’);

B.EXEC add_student(’CANDY,1001);

C.EXEC add_student(stu_id=>1001,stu_name=>’CANDY’);

D.EXEC add_student(stu_name=>’CANDY’, stu_id=>1001);

2.下面对BEFORE触发器与INSTEAD OF 触发器叙述正确的是_____________。A.BEFORE 触发器在触发事件执行之前被触发,触发器事件本事将不会被执行B.BEFORE 触发器在触发事件执行之前被触发,触发器本身仍然执行。C.INSTEAD OF触发器在触发事件发生时被触发,触发器事件本事将不会被执行D.INSTEAD OF触发器在触发事件发生时被触发,触发器本身仍然执行。

3.下面关于:NEW与:OLD的理解正确的是____________________.

A.:NEW与:OLD可发分别用于捕获新的数据与旧的数据。

B.:NEW与:OLD可以分别用于INSERT触发器、UPDATE触发器和DELETE触发器中

C.INSERT 触发器中只能使用:NEW

D.UPDATE触发器中只能使用:NEW

4.修改触发器应该使用下列那种语句_____________.

A.ALTER TRIGGER语句

B.DROP TRIGGER语句

C.CREATE TRIGGER语句

D.CREATE OF REPLACE TRIGGER语句

5.如果在包规范mypackage中没有申明某个过程myprocedure,而在创建包体时包含了该过程,那么对该过程叙述正确的是__________。

A.包体将无法创建成功,因为在包体中包含有包规范中没有申明的元素。B.该过程不影响包体的创建,它属于包的私有元素。

C.可以通过mypackage.myproduce调用该过程。

D.无法在包体外使用该过程

三、简答题

1.简述带参数的存储过程的使用,并概括说明在创建与调用时都应该主意哪些问题。

2.简述存储过程与函数的区别。

3.在表中使用CHECK约束也是为了保证数据的完整性,请举例说明使用触发器与使用CHECK约束的优缺点。

4.在调用存储过程时,如果存储过程中有多个输入参数,则在调用该过程时需要为这些参数赋值,本书介绍了两种为多个参数赋值的形式,一种是指定参数名,另一种是不指定参数名。在实际应用中,有些用户喜欢将上述两种形式混在一起用,如下:

SQL>EXEC test(name =>’李云’,23,sex=>’女’);

请指出在使用这种形式赋值时有什么限制。

5.简述INSTEAD OF 触发器的作用。

答案:

一.第一题

1.CALL

2.OUT ,IN OUT

3.stu_name、stu_id、:stu_name、:stu_name

4.DML触发器,INSTEAD OF触发器,DDL触发器

5.FOR EACH ROW

6.CREATE PACKAGE BODY

二.选择题

1.ACD 2.BC 3.AC 4.D 5.BD

三:简答题

第十一章习题

一、填空题

1.由于临时表中存储的数据只在当前事务处理或者会话进行期间有效,因此临时表主

要分为两种:事务级别临时表和会话级别临时表。

2.穿件外部表,可以在ORGANIZATION EXTERNAL子句中,通过LOCATION选项用来指

定源数据文件;DEFAULT DIRECTORY 选项用来指定所使用的目录对象,该目录对象指向外部数据文件所在目录。

3.创建外部表时,可以使用REJECT LIMIT 子句指定允许出现的数据转

换错误个数。

4.Oracle数据库提供对表或索引的分区方法有5种:范围分区,散

列分区,列表分区,组合范围散列分区和组合范围列表分区。

5.为分区表增加一个新的分区时,需要使用ADD PARTITION 或者

SPLIT PARTITION 子句。

6.在创建分区表或者为分区表增加分区时,指定分区值可以是一个具体的数据,也可

以是MAXVALUE或DEFAULT。其中,MAXVALUE 表示分区中可能的最大值;DEFAULT 表示分区中的其他值。

二、选择题

1.创建临时表时,如果指定 A 子句,则表示创建的临时表是事务级别

的临时表。

A.ON COMMIT DELETE ROWS B.ON COMMIT PRESERVE ROWS

https://www.doczj.com/doc/313924679.html,ANIZATION EXTERNAL

D.PARTITION BY

2.在创建外部表时,使用 B 子句指定记录错误数据的文件

A.REJECT LIMIT

B.BADFILE

C.LOGFILE

D.FILE

3.创建范围分区表需要指定 D 关键字,创建散列分区表需要使用

关键字,创建列分区表需要使用关键字。

A.LIST、HASH、RANGE

B.HASH、LIST、RANGE

C.RANGE、LIST、HASH

D.RANGE、HSAH、LIST

4.为分区表怎家分区时,如果当前存在MAXVALUE或DEFULT值的分区,那么在增加

分区时会出现错误。这时,需要使用 D ,采用分隔分区的方法来解决。

A. ADD PARTITION子句

B.MERGEPARTITION子句

C. DROP PARTITION子句

D.SPLIT PARTITION 子句

5. 根据下列语句,一下说法正确的是 C 。

ALTER TABLE range book

MERGE PARTITIONS part2,parts3 INTO PARTITION part1;

A.将分区表range_book中的part1分区分隔成part2和part3分区

B.将分区表range_book添加part2、part3和part1分区

C.将分区表range_book中的part2和part3分区合并成part1分区

D.删除分区表range_book中的part2和part3分区,只保留part1分区

三、简答题

1.简述临时表的两种类型。

2.创建一个会话级别的临时表和一个事务级别的临时表,想这两个表中分别添加一些

记录数据,然后重新连接数据库,观察两个表中数据的变化。

3.创建一个外部数据文件,然后用CREATE TABLE…ORGANIZATION EXTERNAL语句创建

一个外部表,读取外部数据文件中的内容。

4.简述分区表的5种类型。

5.指出下列语句实现的功能(其中,sid表示学生编号;stuname表示学生姓名stusex

表示学生性别;stubirthday表示学生生日):

CREATE TABLE student(

sid NUMBER(4),

stuname VARCHAR(30),

stusex VARCHAR(4),

stubirthday DATE

)PARTITION BY LIST(stusex)(

PARTITION part1 VALUES(‘男’),

PARTITION part2 VALUES(‘女’),

);

6.使用ADD PARTITION语句,为前面所创建的表student增加一个分区part3,指定

VALUES值为“保密”。

12.6 习题

一、填空题

1.创建用户时,要求创建者具有__CREATE USER__系统权限。

2.向用户授予系统权限时,使用__WITH ADMIN OPTION_选项表示该用户可以将此系统权限再授予其他用户,向用户授予对象权限时,使用_WITH GRANT OPTION_选项表示该用户可以将此对象权限再授予其他用户。

3.Oracle数据库中的权限主要有__系统权限__和_对象权限_两类。

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

5.一个用户想要在其他模式创建表,则该用户至少需要具有___CREATE ANY TABLE___系统权限。

6.禁用与启用角色应该使用___SET ROLE_____语句。

二、选择题

1.如果某个用户仅仅具有scott.emp表上的SELECT和UPDATE权限,则下面对该用户所能执行的操作叙述正确的是___D________。

A.该用户能查询scott.emp表中的记录 B.该用户能修改scott.emp表中的记录

C. 该用户能删除scott.emp表中的记录

D.该用户无法执行任何操作

2.下面对系统权限和对象权限叙述正确的是___D________。

A.系统权限是针对某个数据库对象操作的权限,对象权限不与数据库中的具体对象相关联。

B.系统权限与对象权限都是针对某个数据库对象操作的权限

C.系统权限与对象权限都不与数据库中的具体对象相关联

D.系统权限不与数据库中的具体对象相关联,对象权限是针对某个数据库对象操作的权限

3.启用所有角色应该使用下面哪条语句? D

A.ALTER ROLE ALL ENABLE

B.ALTER ROLE ALL

C.SET ROLE ALL ENABLE

D.SET ROLE ALL

4.在用户配置文件中不能限定如下哪种资源? B

A.单个用户的会话数

B.数据库的会话数

C.用户的密码有效期

D.用户的空闲时长

5.如果用户user1创建了数据库对象,删除该用户需要下列哪条语句? B

A.DROP USER user1;

B.DROP USER user1 CASCADE;

C.DELETE USER user1;

D.DELETE USER user1 CASCADE;

6.修改用户时,用户的什么属性不能修改? A

A.名称

B.密码

C.表空间

D.临时表空间

三、简答题

1.简述系统权限与对象权限的区别。

答:系统权限是指对整个Oracle系统的操作权限,例如连接数据库、创建和管理表或视图等。而对象权限是指用户对数据库中对象的操作权限。

2.简述权限和角色的关系,以及使用角色有哪些好处。

答:在Oracle数据库中,可以将一组相关的权限授予某个角色。使用角色的好处:使用角色可以简化授权操作,能进行动态管理和便于编程。当这类用户的权限需求发生改变时,只需要把角色的权限进行改动,而不必修改每一位用户的权限。角色可以被禁用或激活。当角色被禁止使用时,拥有该角色的用户不再拥有授予改角色的权限了。这样就可以对多个用户的权限进行动态控制了。角色是存储在数据字典中的,并且可以为角色设置口令。这样就能够在应用程序中对角色进行控制。比如禁用或者激活等操作。

3.简述使用WITH ADMIN OPTION选项与使用WITH GRANT OPTION选项的区别。

答:WITH ADMIN OPTION只能在赋予系统权限时使用,WITH GRANT OPTION 只能在赋予对象权限时使用。撤消带有ADMIN OPTION 的系统权限时,

连带的权限将保留,而撤消带有GRANT OPTION 的对象权限时,连带的

权限也将撤消。

4.在一个学生管理系统中,教师teacher01可以查询学生(student表)的所有信息,并可以修改学生的成绩(score 列)、学生student01可以查看学生的信息,主任director01可以添加和删除学生,请问该如何为teacher01、student01

和director01授予相应的权限。

答:grant select, update(score) on student to teacher01;

grant select on student to student01;

grant insert,delete on student to director1

5.简述修改用户的默认角色与禁用启用角色的区别。

答:修改用户的默认角色是对某个用户的操作,禁用启用用户涉及所有拥有该角色的用户。

角色被禁用后,用户也可以自己开启该角色,有时要提供口令。

数据库信息管理系统-JAVA实现

任课教师签名: 日期: 注:1. 以论文或大作业为考核方式的课程必须填此表,综合考试可不填。“简要评语”栏缺填无效。 2. 任课教师填写后与试卷一起送院系研究生秘书处。 3. 学位课总评成绩以百分制计分。

图书管理信息数据库系统-JAVA实 现 目录 一、需求说明 (3) 1、任务概述 (3) 2、需求分析 (3) 2.1功能需求 (3) 2.2、数据描述 (3) 2.2.1静态数据 (3) 2.2.2动态数据 (3) 2.2.3数据库介绍 (3) 3、系统功能概要图 (4) 4、运行环境 (4) 二、数据库的设计 (4) 1、数据库设计的关系模型 (4) 2、创建数据库的语句 (5) 3、给数据库中插记录的相关语句 (6) 4、数据字典 (6) 5、ER图 (8) 三、开发方案介绍 (9) 四、应用系统设计 (10) 附录 (18)

一、需求说明 1、任务概述 满足在线书店管理的需求,实现管理流程。主要功能包括用户注册、用户登录、购物商场、在线购物、订单管理、系统导航、用户退出、权限控制等。 2、需求分析 2.1功能需求 在线书店系统作为一个网络购物网站,它仿照淘宝网等知名购物网站,其总体要求即实现购物网站的基本功能。具体功能要求如下: 1)商品管理。这是管理员的功能。要实现增删改查图书、仓库管理的功能。 2)用户管理。包括用户注册、用户登录和用户退出三个方面,用户还可以更改部分注册 信息。用户登录成功后,在首页面可看到书籍展示。 3)购物车管理。可以修改、删除选购书籍,并保存购物列表。当用户退出时或session 失效时,自动保存用户购物车列表书籍。 4)订单管理。要实现生成订单,删除、修改、查询订单,提交订单。提交后的订单,只 能查看订单信息,不能进行修改,也不能删除。 5)权限控制。主页面和注册页面任何人都可以访问,其他页面,只有已经登录成功的用

《VisualFoxPro6.0简明教程》教学指导书(精)

《Visual FoxPro6.0简明教程》教学指导书 一、教学目的和要求 本课程以Visual Foxpro 6.0 为基础,讲授数据库系统的基本概念和基本理论,使学生了解关系型数据库的基本概念和程序设计方法,能够独立编写VFP程序,并结合数据库的操作管理功能,实现信息管理与查询功能,为后续课程学习奠定基础。 通过本课程的学习,使学生掌握数据库的基本概念、操作、查询;掌握高级语言程序设计及可视化编程功能,掌握可视化编程技巧及技术。学完本课程后,学生应该能够独立编制小型数据库应用程序。 为了便于教师备课,掌握进度,我们给出该课程的教学指导书。但基于各学校的教学安排和情况有所不同,所以很难有统一要求,我们仅以每周3+2学时为例(3节上课,2节上机,按18周设计)写出教学要求。对于每周2+2学时的教学单位有些章节内容可以删略。 二、课程内容及其安排 (课程安排以教育部高职高专规划教材《Visual FoxPro6.0简明教程》为基础) 教学课程内容安排: 第一周 内容:第1章Visual FoxPro 6.0概述 教学目的: 要求学生掌握VFP6.0的功能,VFP6.0系统的软硬件环境,VFP6.0系统的安装及性能指标和VFP6.0文件组成。 教学重点与难点: 1.VFP6.0系统的启动 2. VFP6.0环境介绍 3.VFP6.0文件组成 作业: 1.VFP 6.0的主要特点是什么? 2.VFP 6.0主要使用哪两种菜单? 3.VFP 6.0的数据库文件和数据表文件的扩展名是什么? 第二周 内容:项目管理器 教学目的: 使学生学会项目管理器的建立和使用. 教学重点与难点: 1.项目管理器的建立和界面操作 2. 设计器与生成器的使用 3. 工作目录与搜索路径的建立 作业: 1.什么是项目管理器? 2.如何进入项目管理器 3.项目文件的扩展名是什么?

Oracle 11g修改数据库用户名

Oracle 11g修改数据库用户名 一:创建一个测试用户xxx,并写入测试数据,由spfile文件生成pfile文件,关闭rac 数据库 1.[oracle@node1 ~]$ sqlplus sys/Ab123456@rac5 as sysdba 2.SQL*Plus: Release 11.2.0. 3.0 Production on Tue Mar 6 19:42:12 2012 3.Copyright (c) 1982, 2011, Oracle. All rights reserved. 4. 5.Connected to: 6.Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Produc tion 7.With the Partitioning, Real Application Clusters, Automatic Storage Mana gement, OLAP, 8.Data Mining and Real Application Testing options 9. 10.SQL> create user xxx identified by 123456 default tablespace users; https://www.doczj.com/doc/313924679.html,er created. 12. 13.SQL> grant resource,connect to xxx; 14.Grant succeeded. 15. 16.SQL> create table xxx.test as select * from dba_objects; 17.Table created. 18. 19.SQL> alter user xxx rename to yyy; 20.alter user xxx rename to yyy 21. * 22.ERROR at line 1: 23.ORA-00922: missing or invalid option 24. 25.SQL> alter user xxx rename to yyy identified by 123456; 26.alter user xxx rename to yyy identified by 123456 27. * 28.ERROR at line 1: 29.ORA-00922: missing or invalid option 30. 31.SQL> create pfile from spfile; 32.File created. 33. 34.[oracle@node1 ~]$ srvctl stop database -d rac -o immediate 35.[oracle@node1 ~]$ srvctl status database -d rac 36.Instance node1 is not running on node node1 37.Instance node2 is not running on node node2

oracle11g安装图解

Oracle11G安装图解 进入oracle安装界面,我们选择高级安装 出现选择安装类型,我们选择企业版,至于语言我们不用选择

Oracle 基目录:用于安装各种与ORACLE软件和配置有关的文件的顶级目录。 软件位置:用于存放安装具体ORACLE产品的主目录和路径。在此我们使用默认的配置。 在此ORACLE会选择剩余空间最多的盘作为基目录和安装目录的所在盘。 可以输入一个电子邮件或是metalink接收安全问题通知,在此我直接输入一个 电子邮件,当然也可以是metalink用户信息!

在此是因为我的内存不足,所以会报此提示,那么我们在此调整内存,以满足条件后再继续安装。

装到这个界面,这个问题直接选是,不会影响之后的安装,出现这个问题的原因是因为我的电脑没连接到网络 在此选择安装数据库。 如果是“配置自动存储管理”,则自动存储管理(ASM)可用来自动化和简化对数据文件、控制文件和日志文件的优化布局。自动存储管理(ASM)将每个文件切割成许多小扩展文件,并将它们平均分散在一个磁盘组的所有磁盘上。一旦自动存储管理(ASM)磁盘组建立,创建和删除文件的时候,Oracle数据库都会从磁盘组自动分配存储空间。如果是“仅安装软件”,则只安装ORACLE软件,

在安装之后还需要再运行数据库配置助手创建数据库。 一般用途/事务处理:适合各种用途的预配置数据库。 数据仓库:创建适用于特定需求并运行复杂查询环境。常用于存储并快速访问大量记录数据。 高级:安装结束后运行ORACLE DBCA后,用户才可以配置数据库。 在此我们选择“一般用途/事务处理” 步骤8:单独下一步后,出现“指定数据库配置选项”

人员信息管理系统数据库课程设计

人员信息管理系统数据库课程设计. 数据库课程设计 姓名: 学号: 班级: 系院: 指导老师: 时间:2013.12.31 . . 前言: 随着信息社会的高科技,商品经济化的高效益,使计算机的应用已普及到经济和社会生活的各个领域。为了适应现代社会人们高度强烈的时间观念,同时计算机网络的发展,人员信息方面管理越来越趋向于电子化和智能化,因此对人员信息管理系统的开发意义十分重大。它主要用于企业的管理工作,一般应用于企业局域网,分布在公司各个部门由专人负责管理。人员信息管理系统为管理人员带来了极大的方便。人们可以将大量的繁琐的工作交给计算机去完成,从而大大提高了工作效率,此外,管理人员只需输入一些简单的汉字、数字,即可达到自己的目标。建立人员管理系统,采用计算机对人员的信息进行管理,可以进一步提高企业的经济效益和现代化水平,帮助企业管理人员和工作人员提高工作管理效率。

在一个学期的数据库学习以后,我们对数据库有了一个初步的认识,了解到了数据库在实际操作中的重要作用。所以决定要做一个具有实现功能的小系统,来锻炼一下自己的能力,并且进一步的了解数据库,为以后的实际操作打一下基础。 . . 目录 前言 一、任务书……………………………………………………………………………………1 二、相关技术介绍……………………………………………………………………………1 三、需求分析…………………………………………………………………………………2 四、概念结构设计……………………………………………………………………………4 五、逻辑结构设计……………………………………………………………………………5 六、数据库物理设计…………………………………………………………………………5 七、数据库实施………………………………………………………………………………6 八、系统测试………………………………………………………………………………19 九、系统的主要功能和使用说明…………………………………………………………19 十、课程设计心得…………………………………………………………………………24. . 一、任务书 在本次课程设计中,我们所开发的是人员信息管理系统。人员信息管理系统主要包含职工的个人情况,工资情况等各方面信息。主要是为管理者能够很方便快捷的对员工进行管理。该系统本着操作简洁、信息输入读取方便、安全性高的思想原则。该系统使得管理员的操作权限更加明确、合理化。其中管理者能够对人员信息进行查询、添加、删除、修改等功能,操作简单快捷。

数据库三大范式讲解

数据库三大范式说明 数据库的设计范式是数据库设计所需要满足的规范,满足这些规范的数据库是简洁的、结构明晰的,同时,不会发生插入(insert)、删除(delete)和更新(update)操作异常。反之则是乱七八糟,不仅给数据库的编程人员制造麻烦,而且面目可憎,可能存储了大量不需要的冗余信息。 实质上,设计范式用很形象、很简洁的话语就能说清楚,道明白。本节课将对范式进行通俗地说明,以一个简单论坛的数据库为例来讲解怎样将这些范式应用于实际项目中。 范式说明: 第一范式(1NF): 数据库表中的字段都是单一属性的,不可再分。这个单一属性由基本类型构成,包括整型、实数、字符型、逻辑型、日期型等。 很显然,在当前的任何关系数据库管理系统(DBMS)中,傻瓜也不可能做出不符合第一范式的数据库,因为这些DBMS不允许你把数据库表的一列再分成二列或多列。因此,你想在现有的DBMS中设计出不符合第一范式的数据库都是不可能的。 第二范式(2NF): 数据库表中不存在非关键字段对任一候选关键字段的部分函数依赖(部分函数依赖指的是存在组合关键字中的某些字段决定非关键字段的情况),也即所有非关键字段都完全依赖

于任意一组候选关键字。 假定选课关系表为SelectCourse(学号, 姓名, 年龄, 课程名称, 成绩, 学分),关键字为组合关键字(学号, 课程名称),因为存在如下决定关系: (学号, 课程名称) →(姓名, 年龄, 成绩, 学分) 这个数据库表不满足第二范式,因为存在如下决定关系: (课程名称) →(学分) (学号) →(姓名, 年龄) 即存在组合关键字中的字段决定非关键字的情况。 由于不符合2NF,这个选课关系表会存在如下问题: (1) 数据冗余: 同一门课程由n个学生选修,"学分"就重复n-1次;同一个学生选修了m门课程,姓名和年龄就重复了m-1次。 (2) 更新异常: 若调整了某门课程的学分,数据表中所有行的"学分"值都要更新,否则会出现同一门课程学分不同的情况。 (3) 插入异常: 假设要开设一门新的课程,暂时还没有人选修。这样,由于还没有"学号"关键字,课程名称和学分也无法记录入数据库。 (4) 删除异常: 假设一批学生已经完成课程的选修,这些选修记录就应该从数据库表中删除。但是,与此同时,课程名称和学分信息也被删除了。很显然,这也会导致插入异常。 把选课关系表SelectCourse改为如下三个表: 学生:Student(学号, 姓名, 年龄); 课程:Course(课程名称, 学分); 选课关系:SelectCourse(学号, 课程名称, 成绩)。 这样的数据库表是符合第二范式的,消除了数据冗余、更新异常、插入异常和删除异常。 另外,所有单关键字的数据库表都符合第二范式,因为不可能存在组合关键字。

Oracle_11g 安装图解(详细版)

Oracle 11g安装图文攻略 呵呵,花了一个多小时,左右把11g安装折腾好了。其中折腾SQL Developer 花了好长时间,总算搞定了。好了,先总结下安装步骤,希望给后面的童鞋提高安装效率。呵呵。 一、Oracle 下载 注意Oracle分成两个文件,下载完后,将两个文件解压到同一目录下即可。路径名称中,最好不要出现中文,也不要出现空格等不规则字符。 官方下地址: https://www.doczj.com/doc/313924679.html,/technetwork/database/enterprise-edition/downloads/ index.html以下两网址来源此官方下载页网。 win 32位操作系统下载地址: https://www.doczj.com/doc/313924679.html,/otn/nt/oracle11g/112010/win32_11gR2_database_ 1of2.zip https://www.doczj.com/doc/313924679.html,/otn/nt/oracle11g/112010/win32_11gR2_database_ 2of2.zip win 64位操作系统下载地址: https://www.doczj.com/doc/313924679.html,/otn/nt/oracle11g/112010/win64_11gR2_database_ 1of2.zip https://www.doczj.com/doc/313924679.html,/otn/nt/oracle11g/112010/win64_11gR2_database_ 2of2.zip 二、Oracle安装 1. 解压缩文件,将两个压缩包一起选择,鼠标右击 -> 解压文件如图

个人信息管理系统数据库设计

个人信息管理系统数据库设计 河海大学计算机及信息工程学院,常州, 学年学期 2012第二学期 项目名称个人信息管理 项目组员曹清云、陈天昊 指导教师景雪琴 组号:8 .. 目录 一、课题背景及意 义 ..................................................................... .......................................... 3 二、需求分 析 ..................................................................... ...................................................... 3 三、概要设 计 ..................................................................... ...................................................... 7 四、数据库实施阶 段 ..................................................................... .......................................... 7 五、详细设 计 ..................................................................... ...................................................... 8 六、总 结 ..................................................................... ............................................................ 20 七、参考文

数据库系统简明教程填空题答案

第一章 1数据库具有(永久储存,有组织,可共享)三个基本特点。 2数据库管理系统是数据库系统的一个重要组成部分,他的功能包括(数据定义功能,数据操纵功能,数据库的运行管理,数据的建立和维护) 3数据库系统是指在计算机系统中引入数据库后的系统,一般由(数据库,数据库管理系统,应用系统,数据库管理员)构成 4数据库管理技术的发展是与计算机技术及其应用的发展联系在一起的,他经历三个阶段(人工管理阶段,文件系统阶段,数据库系统阶段) 5数据库具有数据结构化、最小的冗余度、较高的独立性的特点 6DBMS还必须提供(数据的安全性保护、数据的完整性检查、并发控制、数据库恢复)等数据控制功能 7模式是数据库中全体数据的逻辑结构和特征的描述,它仅仅涉及到(型)的描述,不涉及到具体的值 8三级模式之间的两层映像保正了数据库系统中的数据具有较高的(逻辑独立性和物理独立性) 第二章 1、根据模型应用的不同目的,可以将这些模型划分为两类,它们分别属于两个不同的层次。第一类是(概念模型),第二类是(数据模型)。 2、数据模型的三要素是指(数据结构)、(数据操作)和(完整性约束)。实际数据库 系统中所支持的主要数据模型是(层次模型)(网状模型)和(关系模型) 3、数据模型中的(数据结构)是对数据系统的静态特征描述,包括数据结构和数据间联系的描述,(数据操作)是对数据库系统的动态特征描述,是一组定义在数据上的操作, 包括操作的涵义、操作符]、运算规划及其语言等。 4、用树型结构表示实体类型及实体间联系的数据模型称为(层次),上一层的父结点 和下一层的子结点之间的联系是(一对多)的联系。 5、用有向图结构表示实体类型及实体间联系的数据模型称为(网状模型),数据之间的联系通常用(指针)实现 6、(关系模型)是目前最常用也是最重要的一种数据模型。采用该模型作为数据的组织方式的数据库系统称为(关系数据库系统) 7、关系的完整性约束条件包括三大类(实体完整性)(参照完整性)和(用户定义完整性)第三章习题 1、关系数据模型中,二维表的行称为(元组)。 2、用户选作元组标识的一个候选码为(主码),其属性不能取(相同) 3、关系代数运算中,传统的集合运算有(并)、(交)(差)(笛卡尔积)。 4、关系代数运算中,基本的运算是并、差、选择、投影、笛卡尔积 5、关系代数运算中,专门的关系运算有(选择)、(投影)(连接) 6、关系数据库中基于数学上的两类运算是(关系代数)和(关系演算) 7、关系代数中,从两个关系中找出相同元组的运算称为(交)运算。 8.R》《S表示R与S的(自然连接) 第四章 1、SQL的中文全称是(结构化查询语言)。 2、SQL语言除了具有数据查询和数据操纵功能之外,还具有(数据定义)和(数据控制)的功能,它是一个综合性的功能强大的语言。 3、在关系数据库标准SQL中,实现数据检索的语句命令是(select)

Oracle 11g安装图解

Oracle 11g安装 安装图解 图解 图解 下载 Oracle e下载 一、Oracl 注意:Oracle分成两个文件,下载完后,将两个文件解压到同一目录下即可。 路径名称中,最好不要出现中文,也不要出现空格等不规则字符。 官方下地址: win 32位操作系统 下载地址: https://www.doczj.com/doc/313924679.html,/otn/nt/oracle11g/112010/win32_11gR2_databa se_1of2.zip https://www.doczj.com/doc/313924679.html,/otn/nt/oracle11g/112010/win32_11gR2_databa se_2of2.zip win 64位操作系统 下载地址: https://www.doczj.com/doc/313924679.html,/otn/nt/oracle11g/112010/win64_11gR2_databa se_1of2.zip https://www.doczj.com/doc/313924679.html,/otn/nt/oracle11g/112010/win64_11gR2_databa se_2of2.zip 安装 二、Oracle安装 1. 解压缩文件,将两个压缩包一起选择, 鼠标右击 -> 解压文件 如图1所示。 图1 解压文件

2.两者解压到相同的路径中,如图2所示。 图2 解压路径 3. 到相应的解压路径上面,找到可执行安装文件【 setup.exe 】双击安装。如图3所示。 图3 安装文件 4. 安装第一步:配置安全更新(电邮可填可不填)。取消下面的“我希望通过My Oracle Support接受安全更新(W)”,如图4所示。

Oracle 11g安装及验证图文攻略

服务器磁盘分配 一般C盘100G装系统、D盘80G放ORACLE基目录和软件位置、E盘剩余空间(最大)放数据库目录。 Oracle 11g安装图文攻略 注意用administrator用户登录 一、Oracle 下载注意Oracle分成两个文件,下载完后,将两个文件解压到同一目录下即可。路径名称中,最好不要出现中文,也不要出现空格等不规则字符。二、Oracle安装1. 解压缩文件,将两个压缩包一起选择,鼠标右击- 解压文件如图2.两者解压到相同的 一、Oracle 下载 注意Oracle分成两个文件,下载完后,将两个文件解压到同一目录下即可。路径名称中,最好不要出现中文,也不要出现空格等不规则字符。 二、Oracle安装 1. 解压缩文件,将两个压缩包一起选择,鼠标右击-> 解压文件如图 2.两者解压到相同的路径中,如图:

3. 到相应的解压路径上面,找到可执行安装文件【setup.exe 】双击安装。如图: 4. 安装第一步:配置安全更新,这步可将自己的电子邮件地址填写进去(也可以不填写,只是收到一些没什么用的邮件而已)。取消下面的“我希望通过My Oracle Support接受安全更新(W)”。如图:

5. 安全选项,直接选择默认创建和配置一个数据库(安装完数据库管理软件后,系统会自动创建一个数据库实例)。如图:

6. 系统类,直接选择默认的桌面类就可以了。(若安装到的电脑是,个人笔记本或个人使用的电脑使用此选项) 服务器类直接点击这里跳转如图:

7. 典型安装。重要步骤。建议只需要将Oracle基目录更新下,目录路径不要含有中文或其它的特殊字符。全局数据库名可以默认,且口令密码,必须要牢记。密码输入时,有提示警告,不符合Oracel建议时不用管。(因Oracel建议的密码规则比较麻烦,必须是大写字母加小写字母加数字,而且必须是8位以上。麻烦,可以输入平常自己习惯的短小密码即可) 如图:

创建企业信息管理系统数据库

我们即可扩展各种业务管理系统的功能,如图2-1所示。 2.1.1 基础功能流程图 这3者的功能需求是为了适应信息系统用户登录的需要,在已登录、未注册、未登录3种状态下,这3种功能的流转关系如图2-2所示。 从图中也可以看出,系统涉及3个用户角色。 未注册用户。 未登录用户。 已登录用户。 这3种用户可以分别执行下面的3项需求功能。

2.1.2 用户登录功能 只有注册了的用户才可以登录系统。登录系统很简单,只需要提供登录的用户名和密码即可登录系统。 因此,登录功能的输入数据项包括用户名、密码。 2.1.3 用户退出功能 用户登录系统后即拥有了系统操作的权限,在此系统的基础上可以扩展开发更多的操作功能。已登录的用户可以通过退出操作来注销个人登录信息,使用户不再拥有系统内部的管理功能,在用户离开系统后,其他人也就不能够进行操作,提高了系统的安全。 2.1.4 用户注册功能 未注册的用户可以注册一个用户名,并提供密码和简单的个人信息,比如E-mail地址,即可注册成功。需要注意的是,用户名不能够重复。注册成功的用户即可按照刚才注册的用户名和密码登录系统。 因此,注册功能的输入数据项包括用户名、密码、E-mail。 2.2 业务需求功能-企业信息管理系统功能 根据以上的基础功能,我们要扩展开发一个企业信息管理系统,它包含通讯工具、个人管理和企业管理3个大的方面,提供的功能如下。 通讯录管理模块。 短消息管理模块。 日程安排模块。 工作记录模块。 公司公告模块。 工作会议模块。

该图中的"注册→登录→退出"功能是在基础功能中实现的。 2.2.1 通讯录管理模块 用做当前的登录用户添加、修改、删除和查看自己的日程安排列表。 通讯录管理的输入数据项包括姓名、性别、手机、E-mail、QQ、工作单位、地址、邮政编码。 2.2.2 短消息管理模块 用做当前的登录用户给系统内的其他用户发送短消息,并可以查看其他用户发来的消息。 短消息管理的输入数据项包括接收者、发送者、消息内容、发送时间、是否阅读。 2.2.3 日程安排模块 用做当前的登录用户添加、修改、删除和查看自己的日程安排列表。 日程安排的输入数据项包括用户名、年份、月份、日期、安排内容。 2.2.4 工作记录模块 用做当前的登录用户添加、修改、删除和查看自己的工作日志列表。 工作记录的输入数据项包括用户名、年份、月份、日期、日志标题、日志内容、记录时间。 2.2.5 公司公告模块 用户发送通知,大家都可以查看,只有发送通知的用户才有权修改、删除该通知。 公司公告的输入数据项包括公告填写人、公告标题、公告内容、公告时间。 2.2.6 工作会议模块 用户发送会议通知,供所有的用户查看,且只有发送通知的用户才有权修改、删除该通知。 工作会议的输入数据项包括会议填写人、会议开始时间、会议结束时间、会议地点、会议标题、会议内容。 2.3 设计页面结构

数据库系统概论 -范式课件

Database Systems --Unt6. the Relational Theorem ?苏向阳

6. the Relational Theorem 知识点5 Normalization Based on FD

?A relational schema R is in first normal form(1NF)if the domains of all attributes of R are atomic. NO composite attributes, such as: customer( customer-id, name(first-name, middle-initial, last- name), date-of-birth ) Each attribute as an unit, even they have several part that have individual information. A tuple has only one value at each attribute.

?A schema R not in 1NF, then it’s NOT a relational schema. ?A relation R is in 1NF is not ‘good’ enough. For relation: Employee( emp_id, emp_name, emp_phone, dept_name, dept_phone, dept_mgrname, skill_id, skill_name, skill_date, skill_lvl) ?Is in 1NF ?Has Insert Anomaly, Delete Anomaly, Update Anomaly and Data Redundancy .

oracle 11g 安装图解

oracle 11g 安装图解 启动OUI后出现“选择安装方式”窗口,我们选择:高级安装 步骤3:出现“选择安装类型”窗口,选择我们需要安装的版本。我们在此肯定是选择企业版。

至于产品语言不用选择,它会根据当前系统的语言自动调整!步骤4:出现“安装位置”窗口

Oracle 基目录:用于安装各种与ORACLE软件和配置有关的文件的顶级目录。 软件位置:用于存放安装具体ORACLE产品的主目录和路径。在此我们使用默认的配置。 在此ORACLE会选择剩余空间最多的盘作为基目录和安装目录的所在盘。 可以输入一个电子邮件或是metalink接收安全问题通知,在此我直接输入一个电子邮件,当然也可以是metalink用户信息!

步骤5:再向下就是对安装环境进行检测,如果不满足条件则会给出相应的提示,如图所示: 在此是因为我的内存不足,所以会报此提示,那么我们在此调整内存,以满足条件后再继续安装。

步骤6:出现“选择配置选项”如图:

在此选择安装数据库。 如果是“配置自动存储管理”,则自动存储管理(ASM)可用来自动化和简化对数据文件、控制文件和日志文件的优化布局。自动存储管理(ASM)将每个文件切割成许多小扩展文件,并将它们平均分散在一个磁盘组的所有磁盘上。一旦自动存储管理(ASM)磁盘组建立,创建和删除文件的时候,Oracle数据库都会从磁盘组自动分配存储空间。 如果是“仅安装软件”,则只安装ORACLE软件,在安装之后还需要再运行数据库配置助手创建数据库。 步骤7:出现“选择数据库配置”窗口,在此需要选择在安装过程中创建的数据库类型。 一般用途/事务处理:适合各种用途的预配置数据库。 数据仓库:创建适用于特定需求并运行复杂查询环境。常用于存储并快速访问大量记录数据。 高级:安装结束后运行ORACLE DBCA后,用户才可以配置数据库。

学生信息管理系统数据库设计

数据库技术 实 验 报 告 学校 专业 年级 学号 姓名 年月日

学生信息管理系统数据库设计 一、数据库的建立 1. 建库说明 数据库的建立用企业管理器,基本表的建立用SQL语言。 数据库名称为:学生信息管理系统。 2. 建立数据库命令如下: Create database 学生信息管理系统 二、数据表的建立 1. 建表 命令: CREATE TABLE [dbo].[学生档案信息] ( [Sno] [varchar] (50) NOT NULL , [Sname] [char] (10) NOT NULL , [Ssex] [char] (10) NOT NULL , [Sclass] [char] (10) NOT NULL , [Birth] [int] (4) NOT NULL , [Saddress] [char] (10) NOT NULL , [Sdept] [varchar] (50) NOT NULL , [Stime] [int] (4) NOT NULL ,

) ON [PRIMARY] GO (2)班级设置信息表: 命令: CREATE TABLE [dbo].[班级设置信息] ( [Sgrade] [char] (10) NOT NULL , [Szclass] [int] (4) NOT NULL , [Syear] [char] (5) NOT NULL , [Scroom] [char] (5) NOT NULL , [Steacher] [char] (10) NOT NULL , [Stotal] [int] (4) NOT NULL , [Ssub] [varchar] (8000) NOT NULL , ) ON [PRIMARY] GO (3)院系信息表: 命令: CREATE TABLE [dbo].[院系信息] ( [Syname] [varchar] (50) NOT NULL , [Spro] [varchar] (1000) NOT NULL ,

数据库系统教程(第三版)总复习练习和习题(完整版)

数据库系统原理试题一(A卷) 一、选择题(每小题1分,共10分) 1.数据库系统与文件系统的主要区别是。 A. 数据库系统复杂,而文件系统简单; B. 文件系统不能解决数据冗余和数据独立性问题,而数据库系统可以解 决; C. 文件系统只能管理程序文件,而数据库系统可以管理各类文件; D. 文件系统管理的数据量较少,而数据库系统可以管理庞大的数据量。 2. 属于BCNF范式的关系模式。 A. 已消除插入和删除异常; B. 已消除插入、删除异常和数据冗余; C. 依然存在插入和删除异常; D. 在函数依赖的范畴内,已消除插入和删除异常。 3. 单个用户使用的数据视图的描述称为。 A. 外模式 B. 概念模式 C. 内模式 D. 存储模式 4. SQL语言中,删除记录的命令是。 A DELETE B DROP C CLEAR D REMORE 5. ODBC定义的API符合性级别共有级。 A.3 B.4 C.5 D.6 6. 数据库系统三级结构的描述放在中。 A.用户数据库 B.运行日志 C.数据库管理系统 D.数据字典 7. 弱实体的主键。 A.与其父实体的主键完全一致 B.一部份或全部从其父实体的主键获得 C.全部从其父实体的非主键属性获得 D.与其父实体无关 8. 在SQL的语句中,ALTER的作用是。 A.修改基本表的结构 B.修改基本表中的数据 C.删除基本表 D.修改视图 9. 在以下函数依赖中,是平凡的函数依赖。 A.A→ABCD B.ABCD→A C.A→BCD D.BCD→A 10. 在DB恢复时,对已经提交但更新未写入磁盘的事务执行。 A.REDO处理 B.UNDO处理 C.ABOUT处理 D.ROLLBACK处理 二、填空题(每空1分,共10分)

《数据库原理及应用》教学大纲.

《数据库原理及应用》教学大纲 课程编号: 课程英文名称:Principle And Application of Database 课程类别:专业基础课程课程性质:必修课 学分: 3.5 总学时:64 理论学时:48 实验学时:16 开课对象:计算机应用与维护(专科) 开课分院、系:电子信息分院,计算机系 一、课程的性质、目的和任务 数据库是当前计算机领域中应用最广泛、发展最迅速的技术,数据库原理与应用课程是计算机相关专业的专业基础课。本课程的任务是培养学生数据库技术的综合应用能力。本课程主要介绍数据库的基本概念、数据模型,SQL语言,关系数据库及关系数据库理论、数据库设计方法,数据库保护以及SQL Server关系数据库系统的应用。通过本课程的学习,使学生掌握数据库的基本理论和数据库的应用技术,为后续课程学习以及今后从事数据库系统的开发打下一定的基础。 二、先修课程及预备知识 先修课程:计算机文化基础、程序设计语言 三、课程内容、基本要求及学时分配 1.数据库系统基本概念(4学时) [1]基本概念 [2]数据库技术及发展 [3]数据库系统的结构 基本要求: ①了解数据库技术的发展情况,理解数据库系统的结构。 ②掌握数据库的基本概念。 2.数据模型与概念模型(4学时) [1]信息的三种世界 [2]概念模型 [3]数据模型 基本要求: ①了解信息的三种世界,深刻理解概念模型和数据模型。 ②掌握概念模型和数据模型的表示方法。 3.关系数据库(4学时) [1]关系模型及其定义 [2]关系代数 基本要求: ①了解关系模型的数据结构,关系模型的完整性约束。 ②掌握关系代数的运算方法。

Linux操作系统中Oracle11g数据库安装步骤

Linux操作系统中Oracle11g数据库安装步骤 Linux操作系统中Oracle11g数据库安装规范 一:数据库安装软件(含补丁)的下载说明 Oracle数据库安装软件获得途径: 1、可以通过ftp的方式上传至服务器 2、Oracle官方网站下载:(从11.2.0.2开始ORACLE不再提供升级patch,只提供完整的安装包) 二:数据库版本规定 本安装规范所针对的Oracle数据库版本为:Oracle 11.2.0.3.0 三:安装环境需求 1、系统硬件需求 系统必须满足下列最小硬件要求 内存需求 系统架构要求 磁盘空间需求 显示需求 硬件系统基本需求参照表

2、操作系统版本及补丁矩阵 Oracle 11gR2要求OS至少为RHEL4.7,内核为Kernel 2.6.9 作为生产系统,我们要求使用RHEL 5.6 64位版本,即: Red Hat Enterprise Linux AS release 5 Update 5 x86_64 需要安装以下RPM软件包(加32bit括号注解的是该软件包32位版本,对应同名未加注解的则是该软件包64位版本。在64位版本平台上,两种版本都要安装): 1 binutils-2.17.50.0.6

2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 compat-libstdc++-33-3.2.3 compat-libstdc++-33-3.2.3 (32 bit) elfutils-libelf-0.125 elfutils-libelf-devel-0.125 gcc-4.1.2 gcc-c++-4.1.2 glibc-2.5-24 glibc-2.5-24 (32 bit) glibc-common-2.5 glibc-devel-2.5 glibc-devel-2.5 (32 bit) glibc-headers-2.5 ksh-20060214 libaio-0.3.106 libaio-0.3.106 (32 bit) libaio-devel-0.3.106 libaio-devel-0.3.106 (32 bit) libgcc-4.1.2 libgcc-4.1.2 (32 bit) libstdc++-4.1.2 libstdc++-4.1.2 (32 bit) libstdc++-devel 4.1.2 make-3.81 sysstat-7.0.2

学生信息管理系统-数据库版

学生信息管理系统 ---- 数据库版本 学院: 计算机学院 班级: 03级计算机科学与技术02班 姓名:周子杰 学号:57 班级:03级计科2班 日期:2007年3月22日 广东工业大学

一.系统功能流程图: 二.程序主要功能实现代码: 1. ConnectionFrame类://连接数据库函数 /** * 进行参数检查,进行数据库连接 * @param e ActionEvent */ public void jButton1_actionPerformed(ActionEvent e) { driver=jTextField1.getText(); URL=jTextField2.getText(); table=jTextField3.getText(); name=jTextField4.getText(); password=jTextField5.getText(); try{ Class.forName(driver); //加载驱动程序 con = DriverManager.getConnection(URL, name,password); //创建连接 this.setVisible(false); new MainFrame(); con.close(); } catch (Exception e1) { JOptionPane.showMessageDialog(null, "数据库连接出错!请检查参数!", "系统

提示", JOptionPane. INFORMA TION_MESSAGE); } } 2. MainFrame类://主界面类,处理程序各种功能 //作者信息 public void jMenuItem1_actionPerformed(ActionEvent e) { JOptionPane.showMessageDialog(null,"学生: 周子杰\n"+ "学院: 计算机学院\n"+ "专业:计算机科学与技术03级02班\n"+ "学号:3103003157\n"+ "指导老师:杨劲涛","作者信息",https://www.doczj.com/doc/313924679.html,RMA TION_MESSAGE); } //版本信息 public void jMenuItem5_actionPerformed(ActionEvent e) { JOptionPane.showMessageDialog(null,"学生管理系统数据库版本1.0" ,"版本信息",https://www.doczj.com/doc/313924679.html,RMATION_MESSAGE); } //退出系统 public void jMenuItem2_actionPerformed(ActionEvent e) { Object ob=JOptionPane.showConfirmDialog(null,"真的要退出本系统吗?","系统提示",JOptionPane.YES_NO_OPTION); if(ob.equals(JOptionPane.OK_OPTION)) { this.setVisible(false); System.exit(0); } } //按学号查询 public void jButton1_actionPerformed(ActionEvent e) { Column col=queryDataSet1.getColumn("sno"); sno=jTextField1.getText(); formatter=col.getFormatter(); choice=1; queryDataSet1.refilter();//表刷新 } public void jButton2_actionPerformed(ActionEvent e) { choice=2; queryDataSet1.refilter();//表刷新 } //刷新表

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