文档库 最新最全的文档下载
当前位置:文档库 › 企业级数据库实验习题2(答案)

企业级数据库实验习题2(答案)

企业级数据库实验习题2(答案)
企业级数据库实验习题2(答案)

一、单项选择题(15分,每小题1分)22

1.手工创建数据库时,下列(A )脚本用来创建数据字典视图。

A、catalog.sql

B、dataproc.sql

C、sql.bsq

D、dictionary.sql

2.Oracle数据库中,SYS用户的默认口令是( D )。

A、MANAGER

B、SYS

C、ORACLE

D、CHANGE_ON_INSTALL

3.使用以下命令关闭Oracle数据库后,在下次启动数据库前需要进行数据恢复的是(D )。

A、SHUTDOWN NORMAL

B、SHUTDOWN IMMEDIATE

C、SHUTDOWN TRANSACTIONAL

D、SHUTDOWN ABORT

4.下列哪个初始化参数在数据库创建后无法改变( C )。

A、DB_NAME

B、DB_CACHE_SIZE

C、DB_BLOCK_SIZE

D、SHARD_POOL_SIZE

5.如果在创建表空间时没有显式地使用EXTENT MANAGEMENT子句,那么默认地将建立什么管理方式的表空间(B )。

A、字典管理方式表空间

B、本地管理方式表空间

C、根据表空间的默认存储参数自动选择

D、根据初始化参数自动选择6.下列哪些后台进程不是ORACLE实例必须启动的进程( D )。

A、DBWn

B、LGWR

C、SMON

D、ARCn 7.用CREATE DATABASE创建数据库时,应执行下列(B )命令来启动实例。

A、STARTUP INSTANCE

B、STARTUP NOMOUNT

C、STARTUP MOUNT

D、STARTUP RESTRICT

8.如果一个服务进程意外终止,ORACLE使用下列哪一个后台进程来释放它所占用的资源( C )。

A、DBWn

B、LGWR

C、SMON

D、PMON

9.SGA中哪一个缓存区是以循环方式写入的( B )。

A、DATABASE BUFFER

B、REDO LOG BUFFER

C、LARGE POOL

D、SHARED POOL

10.在Oracle数据库中,数据文件、控制文件和重做日志文件的最低数量要求分别是(C )。

A、2 1 2

B、2 2 1

C、1 1 2

D、1 2 1

11.用户要具有连接到数据库中的能力,必须具有下列哪一项权限(C )。

A、CONNECT系统权限

B、CONNECT对象权限

C、CREATE SESSION系统权限

D、CREATE SESSION对象权限12.如果想查看当前数据库是否自动处于自动归档模式,应当使用( A )命令。

A、ARCHIVE LOG LIST

B、ARCHIVE LOG ALL

C、ARCHIVE LOG NEXT

D、ARCHIVE LOG SHOW ALL 13.要改变数据库的归档模式,数据库应当处于哪一种状态下( B )。

A、不加载状态

B、加载但不打开状态

C、受限打开状态

D、关闭状态

14.下列关于数据库静默状态的描述,哪一项是不正确的(A )。

A、处于静默状态的数据库,具有SYSDBA权限的用户可以强行激活会话。

B、处于静默状态的数据库,只允许SYS和SYSTEM用户执行操作。

C、处于静默状态的数据库,不存在任何活动的非DBA会话。

D、处于静默状态的数据库,仍然存在物理I/O操作。

15.下面关于块的保留空闲的描述,哪一条是不正确的( B )。

A、通过设置PCTFREE参数可以对表空间中块的保留空闲空间进行控制。

B、在向表中插入记录时,可以使用块中的保留空闲空间。

C、在更新表中的纪录时,可以使用块中的保留空闲空间。

D、PCTFREE参数和PCTUSED参数的和不能超过100。

二、判断题(15分,每小题1分,正确标T,错误标F)

(F)16.Oracle数据库系统管理员,可以在任意时刻删除任意的

一般数据库用户。

(F)17.在配置监听服务器时,默认的监听器端口是1421。

(T)18.在表的相关字段上定义PRIMARY KEY约束时,会自动创建一个惟一索引。

(T)19.在数据库的任何运行时刻,都不能将系统表空间SYSTEM切换为脱机状态。

(F)20.在用户表中添加了新的记录,或者删除了已有的记录之后,需要手工对索引进行一次更新,以记录表中变化。

(T)21.如果没有为用户指定临时表空间,将使用数据库的默认临时表空间作为用户的临时表空间。

( F ) 22.如果为表定义了约束,将在事务提交时进行约束检查。

(T)23.在Oracle9i中,服务器端初始化参数文件是一个二进制文件,它始终存放数据库服务器端。

(F)24.为用户指定临时表空间后,还须为他在临时表空间中分配空间配额。(F)25.在创建Oracle数据库表时,PCTUSED参数出现在STORAGE子句的结构中。

(T)26.使用ALTER DATABASE命令可以将数据库设置为只读状态。(F)27.在非归档模式下,用户只能通过手工方式对重做日志文件进行归档。(T)28.在执行DBA管理操作时,不能连接到一个共享服务进程,而必须连接到一个专用服务进程。

(T)29.Oracle 9i中,不再提供对IPS/SPX和LU6.2两种网络协议的支持。

三、实验现象与分析(45分)

Oracle数据库管理员启动客户端工具SQL * PLUS,使用如下命令连接数据库:SQL>CONNECT / AS SYSDBA

31.问:数据库管理员以此命令连接数据库,使用什么认证方式?(3分)31.参考答案:(3分)

OS认证方式

32.问:假设产生如下错误信息,主要原因是什么?如何解决? (5分)ERROR:ORA-12224:TNS:no listener

以上错误解决后,数据库管理员登录连接数据库后,运行如下命令以创建用户T om:

SQL>CREATE USER Tom identified by Tompwd

default tablespace USER01

temporary tablespace TEMP

profile DEFAULT

QUOTA 100M on USER01;

32.参考答案:(5分)

原因:没有监听器接收客户端连接请求。

解决方法:在服务器端,运行LSNRCTL工具,使用status命令查看监听器的状态,如果监听器没有运行,应使用start命令启动监听器。如果监听器已经运行,检查客户端中的tnsnames.ora文件,确定连接描述符中配置的网络协议地址与端口是否正确。检查是否存在版本兼容等问题。

33.问:为用户Tom指定多个表空间,这样做在数据管理上有什么优势?(7分)33.参考答案:(7分)

1) 能够将数据字典与用户数据分离开来,避免由于字典对象和用户对象保存在同一个数

据文件中而产生的I/O冲突。

2) 能够将回退数据与用户数据分离开来,避免由于硬盘损坏而导致永久性的数据丢失。

3) 能够将表空间的数据文件分散保存到不同硬盘上,平均分布物理I/O操作。

4) 能够将某个表空间设置为脱机状态或联机状态,以便对数据库的一部分进行备份和恢

复。

5) 能够将某个表空间设置为只读状态,从而将数据库的一部分设置为只读状态。

6) 能够为某种特殊用途专门设置一个表空间,比如临时表空间等,以优化表空间的使用

效率。

7) 能够更加灵活地为用户设置表空间限额。

用户T om在客户端,使用如下命令连接数据库:

SQL>CONNECT Tom/Tompwd AS SYSOPR

34.问:用户Tom以此命令连接数据库,使用什么认证方式?(3分)34.参考答案:(3分)

口令文件认证方式

用户T om登录数据库成功后,执行如下语句创建表STUDENT:

SQL>CREATE TABLE

STUDENT(SNO CHAR(9),SNAME CHAR(8),SEX CHAR(2))

TABLESPACE USER01

STORAGE (INITIAL 128K

NEXT 256K

MAXEXTENTS 4

PCTINCREASE 50 );

出现了如下错误:

ERROR at line 1:ORA-01031:insufficient privileges

35.问:请分析错误的原因,如何解决这个错误?(5分)35.参考答案:(5分)

出现错误的原因:用户Tom缺少创建表的权限。

要解决这个错误,必须由数据库管理员授予其创建表的权限,授权命令如下:

SQL>GRANT create table T o Tom WITH ADMIN OPTION ;

注:下划线部分可省略。

36.问:表STUDENT创建成功后,Oracle最多为STUDENT表分配多少区空间?相应的空间大小分别是多少?(5分)36.参考答案:(5分)

Oracle最多为STUDENT表分配4个区空间,其中:

1) 第1个区的大小由INITIAL参数指定,大小为128K

2) 第2个区的大小由NEXT参数指定,大小为256K

3) 第3个区的大小由公式:NEXT *(1 + PCTINCREASE%)指定,大小为384K

4) 第4个区的大小由公式:(第3个区空间大小)*(1 + PCTINCREASE%)指定,大

小为576K

创建表STUDENT成功,数据库就为表分配了128K的空间(第1个区空间)。

假设表STUDENT创建后,在没有插入任何数据的情况下,DBA执行了如下语句:

SQL>ALTER USER Tom QUOTA 0 ON USER01;

37.问:对用户Tom和表STUDENT的影响是什么?(5分)37.参考答案:(5分)

用户Tom刚刚创建时,在表空间USER01上为其配置了100M的可用空间,用户Tom 在使用数据库的过程中,只创建了表STUDENT,并且没有录入任何数据,数据库将为Tom 的用户表STUDENT分配128K的使用空间(第1个区空间),此时数据库管理员使用命令“ALTER USER Tom QUOTA 0 ON USER01”将用户Tom的空间配额改为0,也就是在表空间USER01上不再为用户Tom分配任何的空间,但是保留已为表STUDENT分配的128K 空间。

假设数据库管理员要执行当前数据库的冷备份(完全数据库脱机备份)。38.问:试叙述冷备份的过程?(6分)

弊装

线

38.参考答案:(6分)

完全数据库脱机备份是在数据库正常关闭的情况下,将数据库全部的数据库文件、在线日志文件、控制文件和参数文件进行OS 备份。步骤如下:

1) 查询要备份的文件列表,确认各类文件的位置:

SQL > SELECT file_name FROM dba_data_files ;

SQL > SELECT * FROM v$logfile ;

SQL > SELECT * FROM v$controlfile ;

2)

用Shutdown 命令关闭数据库 SQL > Shutdown Normal ;(下划线部分可省略) 3)

用OS 的备份工具,备份所有的数据文件、日志文件、控制文件以及参数文件; 4) 重启数据库。

假设数据库管理员在SQL *PLUS 中运行如下命令,以删除用户Tom :

SQL > DROP USER TOM CASCADE

Oracle 数据库提示如下错误:

ERROR at line 1:ORA-01940:can not drop a user that is currently connected

39.问:为什么要使用CASCADE 参数?出现错误的原因是什么?如何解决这个错误?

39.参考答案:(6分)

1)

命令行中加入参数CASCADE ,是因为要删除的用户Tom 模式不为空,拥有模式对象; 2)

删除用户Tom 出现错误,是因为用户Tom 正在连接数据库,与数据库之间有会话; 3) 要解决这个错误,必须通过查询动态视图v$session ,获取用户Tom 的会话信息,然

后根据会话信息将用户的会话进程杀死,最后执行如题的删除命令,才能正确删除用

户Tom 。

查询会话信息:

SQL > SELECT sid ,serial#

FROM v$session

WHERE username=’Tom ’

假设查询到的会话信息为:sid = 5,serial# = 216,则用以下命令杀死会话进程:

SQL > ALTER SYSTEM KILL SESSION ‘5,216’ ;

四、PL/SQL 编程(25分)

某高校成绩数据库管理的表

结构如下:

1) S (SNO ,SN ,SD ,SA ,

SEX ),各属性的含义依

次为:学号、姓名、所属

系、年龄、性别;

2) C (CNO ,CN ,PC ),

各属性的含义依次为:课

号、课程名、先修课程;

关系S 关系SC 关系C

3)SC(SNO,CNO,GRADE),各属性的含义依次为:学号、课程号、成绩,其中GRADE允许为空。

试进行如下PL/SQL编程:

40.在S表上创建触发器DEL_S_SNO,使得在删除某学生信息时,自动删除其在SC 表中的选课信息。(10分)CREATE OR REPLACE TRIGGER DEL_S_SNO

BEFORE DELETE ON S

FOR EACH ROW

BEGIN

DELETE FROM SC

WHERE SNO = :OLD.SNO ;

END ;

41.创建存储过程ShowGRADE统计指定课程的最高分、最低分和平均分,并调用ShowGRADE输出“数据结构”的最高分、最低分和平均成绩。(15分)CREATE OR REPLACE PROCEDURE ShowGRADE(

Cname IN https://www.wendangku.net/doc/2611787429.html,%TYPE ,

MAX_GRADE OUT NUMBER,

MIN_GRADE OUT NUMBER,

A VG_GRADE OUT NUMBER)AS

BEGIN

SELECT MAX(GRADE),MIN(GRADE),A VG(GRADE)

INTO MAX_GRADE, MIN_GRADE, A VG_GRADE

FROM C,SC

GROUP BY https://www.wendangku.net/doc/2611787429.html,O,https://www.wendangku.net/doc/2611787429.html,O

HA VING https://www.wendangku.net/doc/2611787429.html,O = https://www.wendangku.net/doc/2611787429.html,O

AND https://www.wendangku.net/doc/2611787429.html, = Cname ;

END ;

/

V ARIABLE MAX_GRADE NUMBER ;

V ARIABLE MIN_GRADE NUMBER ;

V ARIABLE A VG_GRADE NUMBER ;

EXECUTE ShowGRADE ('数据结构', :MAX_GRADE, :MIN_GRADE,

:A VG_GRADE) ;

PRINT MAX_GRADE MIN_GRADE A VG_GRADE ;

数据库SQL查询例题及解答

1 实验目的 1.熟悉数据库的交互式SQL工具。 2.熟悉通过SQL对数据库进行操作。 3.完成作业的上机练习。 2 实验工具sql server 利用Sql server及其交互式查询工具-查询分析器来熟悉SQL。 3 实验内容和要求 1)实验内容: 创建数据库boat,包括Sailors,Boats,Reserves三个表,表结构如下: Sailors(sid: integer, sname: string, rating: integer, age: real) 船员(船员编号,姓名,级别,年龄) Boats(bid: integer, bname: string, color: string) 船(船编号,名称,颜色) Reserves(sid: integer, bid: integer, day: date) 租赁(船员编号,船编号,日期) (注:下划线表示主键),并插入一定数据。 2)完成下列要求:

(1)查询所有船员的信息 (2)查询所有姓王的船员的信息 (3)查询租用过103号船的船员姓名 (4)查找租用过船只的船员编号 (5)查找rating>7且年龄>25的水手编号 (6)查找租用过红船和绿船的水手名字 (7)查找租用过红船或绿船的水手编号 (8)查找最年长的水手的年龄和名字 (9)在18岁以上水手中,对于每个rating级别中最少有两个水手以上的组中最年轻水手的年龄 (10)查找每条红色船只被租用的次数 (11)把30岁以上船员的级别调高一级 (12)删除所有年龄超过40岁的船员信息 (13)建立年龄超过25岁的船员的视图 (14)对(13)建立的视图,举一操作的例子(查询、删除、修改均可) 2)要求: a.建立boat数据库的SQL脚本,插入所有数据项的SQL脚本(包括所有的测试数据)。 b.记录完成查询要求的SQL语句脚本。 c.记录完成查询的查询结果。

数据库原理及应用(SQL Server 2008)全书答案 清华大学出版社 马建红 李占波主编第三章习题及实验答案

第三章习题及实验答案 习题答案 一、选择题 1、A 2、A 3、C 二、填空题 1、程序 2、MIN、SUM 3、CONTINUE、BREAK 三、简答题 1、可以使用的运算符可以分为算术运算符、逻辑运算符、赋值运算符、字符串串联运算符、按位运算符、一元运算符及比较运算符等。 2、用户自定义函数可分为:标量函数和表值函数。可使用CREATE FUNCTION语句创建函数,在调用用户自定义函数时,如果调用的是标量函数,则必须提供架构名。如果调用的是表值函数,则可以不提供架构名。用户可以将调用的函数用在赋值语句中,或作为表达式的操作数,或用在SQL命令中。 3、批处理是包含一个或多个Transaction-SQL语句的组,从应用程序一次性的发送到SQL Server执行。批处理是使用GO语句将多条SQL语句进行分隔,其中每两个GO之间的SQL 语句就是一个批处理单元。一个批处理中可以包含一条语句,也可以包含多条语句。 4、在SQL Server系统中,可以使用的流程控制语句有BEGIN…..END、IF…ELSE、CASE、WHILE…..CONTINUE….BREAK、GOTO、W AITFOR、RETURN等。 BEGIN…..END….: 在条件语句和循环语句等流程控制语句中,当符合特定条件需要执行两个或多个语句时,就应该使用BEGIN…END语句将这些语句组合在一起。 IF…..ELSE….: IF….ELSE语句是条件判断语句。 CASE:用于多重选择的条件判断语句,结果返回单个值。在CASE中可根据表达式的值选择相应的结果。 WHILE…..CONTINUE….BREAK: SQL语言中的循环语句,用来重复执行SQL语句或语句块。 GOTO: SQL程序中的无条件跳转语句,可以使程序直接跳到指定的标识符位置处继续执行。 WAITFOR: SQL中起暂停正在执行的语句、语句块或者存储过程的调用,直到某时间、时间间隔到达后才继续执行。 RETURN:用于无条件终止查询、存储过程或批处理。

数据库系统实验报告 实验三 数据控制(安全性)..

《数据库系统概论》实验报告 题目:实验三数据控制(安全性) 班级姓名学号日期2014年6月6日 一、实验目的 1.通过SQL对数据库进行安全性控制 2.完成教材中例题的上机练习 二、实验平台 微软SQL Server 2000或以上版本。 对于SQL Server 2000,使用查询分析器运行SQL语句,对于SQL Server 2005以上的版本,使用SQL Server Management Studio运行SQL语句。 三、实验内容和要求 使用SQL对数据进行安全性控制,包括授权和权力回收。 操作完成后,查看授权用户是否真正具有所授予的数据操作权利,在权力回收操作之后,用户是否确实丧失了所回收的数据操作权力。 在前几次实验中已经建立了实验数据库,继续在此数据库上进行实验所要求的各项操作。认真填写实验报告,记录所有的实验用例。 四、实验步骤 1.以管理员sa登录数据库,新建DB数据库,然后运行如下SQL语句,创建 我们前几次实验所建立的表。 CREATE TABLE course ( Cno char(4) NOT NULL, Cname char(40) DEFAULT NULL, Cpno char(4) DEFAULT NULL, Ccredit smallint DEFAULT NULL, PRIMARY KEY (Cno) ) ; -- -- 转存表中的数据'course' -- INSERT INTO course (Cno, Cname, Cpno, Ccredit) V ALUES ('1', '数据库', '5', 4); INSERT INTO course (Cno, Cname, Cpno, Ccredit) V ALUES ('2', '数学', NULL, 2);

数据库实验二及其答案

实验名称 实验二:使用分组,排序,汇总 课程名称 数据库原理与设计 成绩 学院(系) 软件学院 专业 计算机软件工程 班级 学生姓名 学号 实验地点 实验日期

实验报告答案如下: 一.实验内容: 1. 完成在在Recruitment,GlobalToyz和Student数据库基础上的查询, 按要求完成给出的15道题目,要求写出相应数据库的查询语句(SELECT语句)。

二.实验目的: 1.掌握通配符的用法 2.掌握 GROUP BY 子句的使用 3.掌握 ORDER BY子句的使用 4.掌握 TOP和DISTINCT关键字的使用 5.掌握 COMPUTE和COMPUTE BY子句的使用 6.掌握聚集函数的使用 三.实验原理: 本次实验主要通过根据题目要求完成对数据库的查询,加深对sql语言的印象。主要的原理就是SQL语言基本语句及语法。 四.实验过程及编写代码: 1.显示以‘S’开头,并且玩具名称不少于7个字符的玩具名称vToyName。 SELECT vToyName FROM Toys WHERE vToyName like'S______%' 2.显示名称里包含字母‘u’或‘x’的玩具ID和名称以及价格。 SELECT cToyId, vToyName, mToyRate FROM Toys WHERE vToyName like'u%'or vToyName like'x%' 3.查询信用卡号(cCreditCardNo)中包含4个8的订购者(Shopper)的详细信息。 SELECT* FROM Shopper WHERE cCreditCardNo like'%8%8%8%8%' 4.统计订单号为‘000001’的订单订购的玩具的数量和玩具的总花费(mToyCost)。 SELECT cOrderNo, mTotalCost FROM Orders WHERE cCartId ='000001' 5.统计每份提单订购的玩具数量和玩具花费。 SELECT cOrderNo, mToyCost FROM OrderDetail 6.对于GlobalToyz数据库的Country表,统计国家名称只由六个字母构成的国家的数目。 SELECT count(cCountry)'国家数量' FROM Country

数据库SQL实验题目

实验一数据定义操作 实验目的 1.掌握数据库和表的基础知识 2.掌握使用创建数据库和表的方法 3.掌握数据库和表的修改、查看、删除等基本操作方法 实验内容和要求 一、数据库的创建 在开始菜单中,启动SQl Server 程序中的“SQL Server Management Studio”,在对象资源管理器窗口中,右键单击“数据库”,选择“新建数据库”,创建成绩管理数据库Grademanager,要求如下表所示: Grademanager数据库参数表 参数参数值参数参数值 存储的数据文件路 径 D:\db\ 存储的日志文件路径D:\db\ 数据文件初始大小5MB 日志文件初始大小2MB 数据文件最大值20MB 日志文件最大值15MB 数据文件增长量原来10% 日志文件增长量2MB 二、表的创建、查看、修改和删除 1.表的创建 在Grademanager数据库中,右键单击“表”,选择“新建表”命令,创建如下表所示的表:(1)Student表的表结构 字段名称数据类型长度精度小数位数是否允许 Null值 说明 Sno Char 10 0 0 否学号,主码 Sname Varchar 8 0 0 是姓名 Ssex Char 2 0 0 是性别,取值:男或女 Sbirthday Date 8 0 0 是出生日期 Sdept Char 16 0 0 是系名 Speciality Varchar 20 0 0 是专业名 特别注意: 为属性Ssex设置约束,需选中属性Ssex行,然后单击菜单中的“表设计器”,选择“CHECK 约束”命令,然后按照图1进行设置。

图1 设置性别的约束 (2)Course表(课程名称表)的表结构 字段名称数据类型长度精度小数位数是否允许Null值说明 Cno Char 5 0 0 否课程号,主码Cname Varchar 20 0 0 否课程名 (3)SC表(成绩表)的表结构 字段名称数据类 型 长 度 精 度 小数位 数 是否允许Null值说明 Sno Char 10 0 0 否学号,外码 Cno Char 5 0 0 否课程号,外码 Degree Decimal 5 5 1 是成绩,0~100之间 特别注意: ①为属性Degree 约束,可参照属性Ssex进行设置,“CHECK约束对话框”中的表达式为Degree>=1 And Degree<=100 ②为SC表设置外键Sno和Cno的方法: 右键单击表SC,选择“设计”命令,然后选择菜单“表设计器”中的“关系”命令,打开“外键关系”窗口,选择“添加”按钮,然后单击“表和列规范”后的按钮,按照图2进行设置,即可将SC表中的Cno属性设置为外键。按照相同的方法,将属性Sno也设置为外键。

数据库试验答案

计算机与信息学院 数据库实验报告 专业班级 学生姓名及学号 课程教学班号 任课教师 实验指导教师 实验地点 2012 ~2013 学年第二学期

实验1 使用向导创建和删除数据库 一、实验目的 1.熟悉SQL Server 中SQL Server Management Studio的环境 2.了解SQL Server 数据库的逻辑结构和物理结构 3.掌握使用向导创建和删除数据库的方法 二、实验要求 1.熟练使用SSMS进行数据库的创建和删除操作。 2.完成实验报告。 三、实验内容 设有一学籍管理系统,其数据库名为“EDUC”。 初始大小为10MB,最大为50MB,数据库自动增长,增长方式是按5%比例增长; 日志文件初始为2MB,最大可增长到5MB,按1MB增长。 数据库的逻辑文件名为“student_data”, 物理文件名为“student_data.mdf,存放路径为“E:\sql_data”。 日志文件的逻辑文件名为“student_log”, 物理文件名为“student_log.ldf”,存放路径为“E:\sql_data”。 四、实验步骤

1.使用SQL Server Management Studio(简称SSMS)创建数据库。 (1)启动SSMS 在开始菜单中:所有程序-SQL Server 2005 -SQL Server Management Studio单击“连接”按钮,便可以进入【SQL Server Management Studio】窗口。如果身份验证选择的是“混合模式”,则要输入sa的密码。 (2)建立数据库 在“对象资源管理器”窗口,建立上述数据库EDUC。在数据库节点上右击选择新建。同时建立一个同样属性的数据库EDUC1。

数据库系统设计实验报告

数据库系统设计实验报告 ――教务管理系统 学院:计算机科学与技术 专业:软件工程 班级: 学号: 姓名: 指导老师:

一、概述 项目背景:数据库课程设计 系统名称:教务管理系统 开发环境:SQL Server 2008 二、需求分析 1、系统的概述 ?一个学校由很多个学院组成,每个学院有多个专业,每个专业有1个或 者多个班级。一个学生只属于1个班级,学生有姓名、学号、性别、身 份证号、入学时间等属性。 ?每个专业的每个年级都有对应的教学计划。教学计划指定了这个专业这 个年级的某门课程在那个学期上,学分、学时是多少。每个学院都设置 有1个教务秘书,这些信息都由教务秘书进行输入。每个院系的课程都 有自己的唯一编码,比如计算机系上的C语言,和电子系上的C语言, 虽然都是同一门课,但是编码是不同的。但是同一个院系中的相同的课 程,课程代码是唯一的。比如计算机学院的07计算机软件专业和计算机 学院的07计算机科学专业都有C语言课程,这两门课程的课程代码是相 同的。 ?教务秘书在每个学期的中间时刻,为下一个学期进行排课,排课的内容 根据教学计划,比如08计算机软件专业的学生,在2009-2010年第2 学期上的课程,可以通过教学计划得知要上什么课程,然后对这些课程 安排上课教师(比如陈越)、上课时间(比如星期2,第1-2节)和地点 (理工楼234),有的课程是单周上,有的双周,也有是每周都上的。 ?在每个学期期末,学生登录到网站上选择下一个学期需要上的课,选择 的时刻,可以选择是否需要教材,如果某门课程的人数选满了,则不能 给任何学生选择了。 ?学生根据选择的课程进行上课,参加考试。每个老师可以用自己的用户 名和密码登陆网站,选择这个学期自己所教的课程(一个老师可以上多 个班级的课程),输入这个班级的成绩,成绩分为期末考试成绩、期中考 试成绩、平时成绩、实验成绩以及总评成绩。这些成绩都需要进行存储。 ?为了保证安全性,老师输入的成绩并不是直接放到最终的成绩表中,而 是放在一个临时的表中,只有当教务秘书审核过后,才导入到最终的成 绩表中。

数据库实验题目和答案

按照如下方式重新定义四张表: 定义新的books表,其所拥有的属性与属性类型与原有的books表一致 以列级完整性的方式定义属性bookId为主码,同时在定义的时候必须提供约束名 定义属性category为”非空” ,同时在定义的时候必须提供约束名 create table Books( bookId number(9,0) constraint BooksKey primary key, title varchar(80), author varchar(40), year integer, category varchar(15) constraint B1 not null ); commit; 定义新的customers表,其所拥有的属性与属性类型与原有的customers表一致 以表级完整性的方式定义属性cid为主码 以列级完整性的方式定义属性cname为”唯一”,同时在定义的时候必须提供约束名 create table Customers ( cid number(9,0), cname char(40) constraint C1 unique, age integer, primary key(cid) ); commit; 定义新的purchases表,其所拥有的属性与属性类型与原有的purchases表一致 定义属性cid与bookId为主码,同时在定义的时候必须提供约束名 以列级完整性的方式定义属性bookId为外码,它参照Books表的主码,同时在定义的时候必须提供约束名。当删除Books表中的某一本书时,级联删 除与它相关的购买记录 以表级完整性的方式定义属性cid为外码,它参照customers表,同时在定义的时候必须提供约束名。当删除customers表中的某个顾客时,如果存在 与该客户相关的购买记录,拒绝删除。 create table Purchases( cid number(9,0), bookId number(9,0)

数据库实验1-6参考答案

实验一SQL Server使用初步 一、实验目的 1、熟悉SQL Server2000的组成及基本功能。 2、掌握SQL Server2000的登录及注册。 3、掌握SQL Server2000企业管理器的使用方法。 4、熟悉查询分析器的基本使用。 二、实验预习 1、什么是数据库管理系统DBMS?你所知道的DBMS有哪些? 答:DBMS是位于用户和操作系统之间的一层数据管理软件。常见的DBMS主要有:Oracle、db2、SQL Server、MySQL、PostgreSQL、SQLite、Firebird等等。 2、SQL Server 2000(2005)的安装步骤? 答:以企业版安装为例,步骤为: 将企业版安装光盘插入光驱后,出现以下提示框。请选择“安装 SQL Server 2000 组件” 出现下面对话框后,选择 "安装数据库服务器" 。 选择 "下一步",然后选择 "本地计算机" 进行安装。 在 "安装选择" 窗口,选择 "创建新的SQL Server实例..."。对于初次安装的用户,应选用这一安装模式,不需要使用 "高级选项" 进行安装。 "高级选项" 中的内容均可在安装完成后进行调整。 在 "用户信息" 窗口,输入用户信息,并接受软件许可证协议。 在“安装定义”窗口,选择“服务器和客户端工具”选项进行安装。 在“实例名”窗口,选择“默认”的实例名称。 在“安装类型”窗口,选择“典型”安装选项,并指定“目的文件夹”。 在 "服务账号" 窗口,请选择 "对每个服务使用统一账户..." 的选项。 在 "身份验证模式" 窗口,选择 "混合模式..." 选项,并设置管理员"sa"账号的密码。 最后按“下一步”即可完成安装。 检测安装:如果安装成功,应该能成功启动SQL Server,并且能和SQL Server 客户端连接上。 可以通过服务管理器来进行启动。

《数据库及SQL Server》项目实训题

《数据库及SQL Server》项目实训题 一、学生成绩管理系统数据库 要求: 1、设计并创建数据库( ),保存与学生及成绩有关的信息,包括:学生基本信息,课程基本信息,学生成绩信息等,设置各表的完整性约束条件(如主键、外键等)。录入以上信息。 2、创建存储过程( ),根据输入学号统计并显示该生成绩信息,包括总分、平均分、不及格门数等。 3、创建存储过程( ),根据输入课程名称统计并显示该课程的考试信息,包括考试人数、最高分、最低分、平均成绩等。 4、创建函数( ),根据学号与课程名得出该生该门课的名次。 二、图书管理系统数据库 要求: 1、设计并创建数据库( ),保存与图书管理有关信息,包括:图书信息,读者信息,借阅信息等,设置各表的完整性约束条件(如主键、外键等)。录入以上信息。 2、创建存储过程( ),根据输入读者号查询统计该读者的借阅信息,包括总借本数、未还本数、未还书的图书信息与借阅日期等。 3、创建存储过程( ),根据输入书号查询该图书的借阅信息,包括借阅者信息与借还日期,并统计该书的借阅人次数、总借阅天数等。 4、创建触发器( ),当借书(添加借阅记录)时,查询该书就是否借出未还,如已借出则不能添加借阅记录,如未借出则正常添加。(提示:可创建替代触发器) 三、职工工资系统数据库 已知某公司工资计算方法为: 实发工资=级别工资+(本月加班天数-缺勤天数)/本月全勤天数×级别工资 如:张明的级别为部长,部长工资就是5000元,2014年11月全勤天数为20天,张明加班2天,缺勤1天,则张明2014年11月的工资就是:5000+(2-1)/20*5000=5250元 要求: 1、设计并创建数据库( ),用于保存与职工工资有关的信息,设置各表的完整性约束条件 (如主键、外键等)。录入职工基本信息、级别工资信息、每月的职工加班天数与缺勤天数。 2、创建视图( ),包括以下信息:年月、职工工号、姓名、级别、加班天数、缺勤天数、实 发工资。试设计各种条件查询该视图。 3、创建函数( ),根据年月与职工工号计算出该职工该月的工资。 4、创建存储过程( ),根据输入的年月计算出该月所有职工的工资,保存并显示。(参考提示:先得到该月全勤天数) 四、超市售货系统数据库 要求: 1、一连锁超市拥有若干分部,设计并创建数据库( ),保存与超市售货有关信息,包括:各分部超市的基本信息,商品信息,每天的销售信息等,设置各表的完整性约束条件(如主键、外键等)。录入以上信息。 2、创建函数( ),根据年月、超市编号、商品号计算出该商品在该超市当月的销售总金额。 3、创建存储过程( ),根据输入年月统计当月销售量排在前五位的商品及销售数量。 4、创建存储过程( ),根据输入年月统计当月销售金额排在前5%的超市信息及销售总金额。(提示:可创建临时表存放中间数据,用完删除)

数据库实验五题目答案

实验五 实验5.1 数据查询 1)要求 以School数据库为例,在该数据库中存在四表格,分别为: ●表STUDENTS(sid, sname, email, grade); ●表TEACHERS(tid, tname, email, salary); ●表COURSES(cid, cname, hour); ●表CHOICES(no, sid, tid, cid, score) 在数据库中,存在这样的关系:学生可以选择课程,一个课程对应一个教师。在表CHOICES中保存学生的选课记录。 按以下要求对数据库进行查询操作: (1)查询年级为2001的所有学生的名称并按编号升序排列。 程序:Select sname from students where grade='2001' order by sid asc; (2)查询学生的选课成绩合格的课程成绩。 程序:Select score from choices where score>'59';

(3)查询课时是48或60的课程的名称。 程序:select cname from courses where hour='48'or hour='60'; (4)查询所有课程名称中含有data的课程编号。 程序:select cid from courses where cname like'%data%';

(5)查询所有选课记录的课程号(不重复显示)。 程序:select distinct cid from choices; (6)统计所有教师的平均工资。 程序:select avg(salary) from teachers;

数据库系统实验

实验指导书 班级:090402 姓名:郑锦坤

序言 数据库是数据管理的最新技术,是计算机科学的重要分支。通过学习重点让大家掌握数据库技术的程序设计思想和方法,学习开发管理系统的技术,并结合PB8.0以上版本和SQL SERVER 2000以上版本上机环境编程测试。 为了达到这个目的,这里安排五个实验单元。 实验报告的内容 1.题目 描述每个实验的内容是什么。 2.需求分析 用E-R图描述数据库的模式设计及每个关系模式的建立;描述数据字典及程序数据流;每个事件、函数或过程 的头和规格说明; 3.源程序清单和结果 源程序要加注释,要有测试数据及结果。

实验1:学习SQL 语句与SQL SERVER的数据库环境(4学时) 本次实验的主要目的在于学会使用SQL SERVER环境建 库的方法,学会SQL SERVER企业管理器和查询分析器的使用,通过数据库操纵环境,了解库的建立、表的建立、数据库 的查询实现方法。实验数据如下: Student SC

实验报告 1 日期: 一.SQL语句实验题目: 1.建立课程表 2.建立学生表 3.建立选课表 4.查询所有学生的详细信息

SELECT Student.SCLASS, Student.SNO,Student.SNAME, Student.SSEX, Student.SAGE , Student.SDEPT,https://www.wendangku.net/doc/2611787429.html,O,SC.GRADE,https://www.wendangku.net/doc/2611787429.html,AME,Course.CPNO,Course. CCREDIT FROM Course,Student,SC WHERE SC.SCLASS=Student.SCLASS AND SC.SNO=Student.SNO AND https://www.wendangku.net/doc/2611787429.html,O=https://www.wendangku.net/doc/2611787429.html,O 5.查询1班的学生号学及姓名 SELECT SNO,SNAME FROM Student WHERE SCLASS='1' 6.查询‘刘晨’的出生年 7.查询姓‘刘’的学生的详细情况

数据库实验答案实验二Sql

(1) 查找有销售记录的客户编号、名称和订单总额。 命令: SELECT a.CustomerNo,CustomerName, sum(quantity*price) orderSum FROM OrderMaster a,OrderDetail b,Customer c WHERE b.orderNo=a.orderNo AND c.CustomerNo=a.CustomerNo GROUP BY a.CustomerNo,CustomerName ORDER BY a.CustomerNo,orderSum DESC (2) 在订单明细表中查询订单金额最高的订单。 命令:SELECT top 1 orderNo,sum(quantity*price)订单金额 FROM OrderDetail GROUP BY orderNo ORDER BY 订单金额DESC (3) 查询没有订购商品的客户编号和客户名称。 命令: SELECT CustomerNo,CustomerName FROM Customer WHERE CustomerNo NOT IN (SELECT CustomerNo FROM OrderMaster) (4) 找出至少被订购3次的商品编号、订单编号、订货数量和订货金额,并按订货数量的降序排序输出。 命令: SELECT a.productNo,orderNo,quantity,(quantity*price) money FROM OrderDetail a, (SELECT productNo FROM OrderDetail

GROUP BY productNo HA VING COUNT(*)>=3) b WHERE a.productNo =b.productNo ORDER BY a.productNo,quantity DESC 被订购三件以上的…… SELECT b.ProductNo,orderNo,quantity,orderSum=quantity*price FROM OrderDetail b, (SELECT ProductNo FROM (SELECT ProductNo,sum(quantity)SQ from OrderDetail GROUP BY ProductNo)a WHERE a.SQ>3)c WHERE b.ProductNo=c.ProductNo ORDER BY b.quantity DESC (5) 使用子查询查找32M DRAM的销售情况,要求显示相应的销售员的姓名、性别,销售日期、销售数量和金额,其中性别用“男”、“女”表示。 命令: SELECT employeeName,case sex

数据库上机实验题目和答案

试用SQL的查询语句表达下列查询: 1.检索王丽同学所学课程的课程号和课程名。 select Cno ,Cname from c where Cno in (select cno from sc where sno in (select sno from s where sname='王丽' )) 2.检索年龄大于23岁的男学生的学号和姓名。 select sno,sname from s where sex='男' and age>23 3.检索‘c01’课程中一门课程的女学生姓名 select sname from s where sex='女' and sno in (select sno from sc where cno='c01') 4.检索s01同学不学的课程的课程号。 select cno from c where cno not in (select cno from sc where sno ='s01') 5.检索至少选修两门课程的学生学号。 select sc.sno from s,sc where s.sno=sc.sno group by sc.sno having count(https://www.wendangku.net/doc/2611787429.html,o)>=2 6.每个学生选修的课程门数。 解法一: select so.sno sno,https://www.wendangku.net/doc/2611787429.html,ount,s.sname from(select sc.sno sno,count(sc.sno) ccount from sc,s where s.sno=sc.sno group by sc.sno ) so,s where s.sno=so.sno 解法二: select sc.sno sno,s.sname,count(sc.sno) ccount from sc,s where s.sno=sc.sno group by sc.sno,sname

数据库系统原理及应用实验全套

数据库系统原理及应用实验指导书 (本科) 福建工程学院计算机与信息科学系计算机软件与理论教研室 浅诺制作 2012年5月

目录 实验一数据定义语言 (1) 实验二 SQL Sever中的单表查询 (5) 实验三 SQL Serve中的连接查询 (8) 实验四 SQL Serve的数据更新、视图 (12) 实验五数据控制(完整性与安全性) (17) 实验六语法元素与流程控制 (22) 实验七存储过程与用户自定义函数 (28) 实验八触发器 (34)

实验一数据定义语言 一、实验目的 1.熟悉SQL Server2000/2005查询分析器。 2.掌握SQL语言的DDL语言,在SQL Server2000/2005环境下采用Transact-SQL实现表 的定义、删除与修改,掌握索引的建立与删除方法。 3.掌握SQL Server2000/2005实现完整性的六种约束。 二、实验内容 1.启动SQL Server2000/2005查询分析器,并连接服务器。 2.创建数据库: (请先在D盘下创建DB文件夹) 1)在SQL Server2000中建立一个StuDB数据库: 有一个数据文件:逻辑名为StuData,文件名为“d:\db\”,文件初始大小为5MB,文件的最大大小不受限制,文件的增长率为2MB; 有一个日志文件,逻辑名为StuLog,文件名为“d:\db\”,文件初始大小为5MB,文件的最大大小为10MB,文件的增长率为10%

2)刷新管理器查看是否创建成功,右击StuDB查看它的属性。 3.设置StuDB为当前数据库。 4.在StuDB数据库中作如下操作: 设有如下关系表S: S(CLASS,SNO, NAME, SEX, AGE), 其中:CLASS为班号,char(5) ;SNO为座号,char(2);NAME为姓名,char(10),设姓名的取值唯一;SEX为性别,char(2) ;AGE为年龄,int,表中主码为班号+座号。 写出实现下列功能的SQL语句。 (1)创建表S; (2)刷新管理器查看表是否创建成功; (3)右击表S插入3个记录:95031班25号李明,男性,21岁; 95101班10号王丽,女性,20岁; 95031班座号为30,名为郑和的学生记录;

sql 数据库 实验2答案

实二:创建及管理数据库 1.管理数据库 1)要求在本地磁盘D创建一个学生-课程数据库(名称为student),只有一个 数据文件和日志文件,文件名称分别为stu和stu_log,物理名称为stu_data.mdf 和stu_log.ldf,初始大小都为3MB,增长方式分别为10%和1MB,数据文件最大为500MB,日志文件大小不受限制。 CREATE DATABASE student ON (NAME=stu, FILENAME='D:\stu_data.mdf', SIZE= 3MB, MAXSIZE= 500MB, FILEGROWTH= 10%) LOG ON (NAME=stu_log, FILENAME='D:\stu_log.ldf', SIZE= 3MB, MAXSIZE=unlimited, FILEGROWTH= 1MB) 2)创建一个Company数据库,该数据库的主数据文件逻辑名称为 Company_data,物理文件为Company.mdf,初始大小为10MB,最大尺寸为无限大,增长速度为10%;数据库的日志文件逻辑名称为Company_log,物理文件名为Company.ldf,初始大小为1MB,最大尺寸为50MB,增长速度为1MB。 CREATE DATABASE company ON (NAME=company_data, FILENAME='D:\company.mdf', SIZE= 10MB, MAXSIZE=unlimited, FILEGROWTH= 10%) LOG ON (NAME=company_log, FILENAME='D:\company.ldf', SIZE= 1MB, MAXSIZE= 50MB, FILEGROWTH= 1MB) 3)创建数据库DB,具有2个数据文件,文件逻辑名分别为DB_data1和DB_data2,

数据库实验习题

《数据库概论》实验指导书 (2003级) 一、实验目的: 数据库系统是一门应用性很强的课程,上机实验是数据库课程的重要环节。本实验是结合《数据库概论》课程的学习而开设的实验。本实验目的如下: 1. 通过上机实验,加深对数据库系统理论知识的理解,增强对网络环境下大型数据库的感性认识和实际操作能力; 2. 通过使用具体的DBMS,了解一种实际的数据库管理系统,并掌握其操作技术。熟悉ORACLE数据库的Net8工具,掌握ORACLE数据库的网络连接配置; 3. 学习使用SQL语言,加深对SQL语言的认识和理解,提高SQL语言的实际应用能力; 4. 加强对事务处理、权限管理等概念的认识和理解。 二、适应专业:信息管理与信息系统,信息与计算机科学 三、实验学时数:12学时 四、实验内容及学时安排: 实验准备: 各班选出10个同学,协助老师搭建试验环境。包括: 1)安装ORACLE客户端,配置与主机的数据库连接。 2)安装软件工具 PLSQL/DEVELOPER 3)负责本班用户的建立。 分为两批上午下午各两个班。 实验一:数据定义/数据操纵语言 实验目的:熟悉Oracle上机环境以及Oracle客户端的配置;熟练掌握和使用DDL语言,建立、修改和删除数据库表、主键、外键约束关系和索引;熟练掌握和使用DML语言,对数据进行增加、修改和删除操作。 学时数:4学时 实验内容:SQL数据定义语句, SQL数据操纵语句。 实验要求:1. 熟悉Oracle上机环境; 2. 建立数据库表,修改数据库表结构,建立、删除索引;

3. 对数据库表进行插入、修改和删除数据的操作。 实验二:数据查询语言,视图定义 实验目的:体会SQL语言数据查询功能的丰富和复杂,视图使用。 学时数:4学时 实验内容:SQL数据查询语句,视图的定义与操纵; 实验要求:对数据库表进行各种查询操作,建立视图,视图查询,视图更新; 实验三:授权控制与事务处理 实验目的:通过实验进一步理解视图的建立和更新、数据库的权限管理和事务处理功能。 学时数:2学时 实验内容: 1. SQL数据控制语句; 2. SQL事务处理。 实验要求: 1. 给某一或全部用户授权和收回授权; 2. 事务回退,事务提交。 五、教材及参考文献 1.《数据库系统概论》(第三版)萨师煊等编著高等教育出版社 2000.2 2.《ORACLE 8.x For Windows NT实用教程》翁正科等编著清华大学出版社 1998.10 六、实验环境 实验要求如下环境 服务器端:Windows 2000NT Server; ORACLE 8.x Database Server For Windows Windows2000 Server 客户端: Windows9x;Oracle 8.x Client 网络协议:TCP/IP 七、成绩考核 上机实验考核采取实验报告和上机抽查检验相结合的方式。每次实验结束后都必须写出实验报告。 八. 实验报告

数据库系统-实验3

实验九触发器的创建与使用 一、实验目的 本实验的目的是使学生进一步掌握SQL Server触发器的创建及使用方法,加深SQL触发器的理解。通过对数据的更新操作体会其触发器的作用。 二、实验准备 结合课堂教学内容,了解触发器的相关知识,掌握触发器的定义,理解触发器的使用方法及其特点。 三、实验要求 1. 掌握T-SQL创建触发器语句Create trigger的使用。 2. 完成所规定的触发器定义要求。 3. 通过数据查询检查触发器的使用效果。 4. 注意操作结果的截图与保存,供撰写实验报告使用。 四、实验内容 1. 在班级表class中增加班级人数(c_total)字段。 2. 为学生表(student)创建INSERT触发器t_inst_stu:新增一名学生时,若其班级编号非空,则将班级表(class)中相应班级的人数(c_total)自动加1。 3. 为学生表(student)创建DELETE触发器t_dele_stu:删除一名学生时,若其班级编号非空,则将班级表(class)中相应班级的人数(c_total)自动减1。 4. 为学生表(student)创建UPDATE触发器t_update_stu: 当某学生所在班号发生变化时(即调到另一班级后),将其原先所在班级的人数(c_total)减1,将新调入的班级班级的人数(c_total)加1。 5. 体会触发器的作用。 五、实验步骤 在查询分析器中完成实验内容。 1. 使用alter table语句在班级表class中增加班级人数(c_total)字段,默认值(DEFAULT)是0; 2. 为学生表(student)分别创建:

数据库SQL查询例题与解答

1实验目的 1 .熟悉数据库的交互式SQL工具, 2 . 熟悉通过SQL对数据库进行操作。 3 . 完成作业的上机练习。 2 实验工具sql server 利用Sql server及其交互式查询工具-查询分析器来熟悉SQL。 3实验内容和要求 1)实验内容: 创建数据库boat,包括Sailors ,Boats,Reserves三个表,表结构如下: Sailors(sid: integer, sname: stri ng, rat ing: in teger, age: real) 船员(船员编号,姓名,级别,年龄) Boats(bid: integer, bname: stri ng, color: stri ng) 船(船编号,名称,颜色) Reserves(sid: integer, bid: integer, day: date) _____ 租赁(船员编号,船编号,日期) (注:下划线表示主键),并插入一定数据

2 )完成下列要求: (1)查询所有船员的信息 (2)查询所有姓王的船员的信息(3 )查询租用过103 号船的船员姓名 (4)查找租用过船只的船员编号 (5 )查找rating>7 且年龄>25 的水手编号(6)查找租用过红船和绿船的水手名字(7 )查找租用过红船或绿船的水手编号(8)查找最年长的水手的年龄和名字 (9 )在18 岁以上水手中,对于每个rating 级别中最少有两个水手以上的组中最年轻水手的年龄 (10 )查找每条红色船只被租用的次数 (11 )把30 岁以上船员的级别调高一级 (12 )删除所有年龄超过40 岁的船员信息 (13 )建立年龄超过25 岁的船员的视图 (14 )对(13 )建立的视图,举一操作的例子(查询、删除、修改均可) 2)要求: a.建立boat 数据库的SQL 脚本,插入所有数据项的SQL 脚本(包括所有的测试数据)。b.记录完成查询要求的SQL 语句脚本。

数据库系统原理实验

《数据库系统原理》实验指导 信息管理系 2010.9

背景知识介绍 学籍管理是学校管理中一项繁琐的工作,管理人员需要建立学生的学籍,汇总每学期没有拿到规定学分的学生以及这些学生的详细情况;学生完成一门课程的学习后,教师需要录入学生的考试成绩,计算平均成绩、汇总各分数段的人数,学生需要查询已结业的各门课程的成绩;班主任需要查询本班学生学习情况,包括各门课程的平均成绩和每个学生的考试通过情况,为此,设计一套实用的学籍管理系统就可以大大简化管理人员、班主任和任课教师的工作,方便学生查询自己的学习情况。该系统主要实现的功能如表1所示。 表1 学籍管理主要功能表 学籍管理基本情况:一个学院包含多个班级和多名教师,每个班级包括多名学生,根据学校规定,一个班级只有一个班主任,一个老师也只担任一个班级的班主任,一个学院有多名班主任,学院的属性有学院编号和学院名称,班级的属性有班级编号和班级名称,学生的属性有学号、姓名、性别和出生日期;每个学生可以选修多门课程,每门课程也可以被多个学生选修,学生选修课程后参加考试会有考试成绩,一个教师可以讲授多门课程,每一门课程也可以有多个教师讲授,教师授课要考虑授课地点以及授课的学期,一个教师可以受聘一种职称,一个职称可以聘任多个教师,每门课程属于一种课程类型,而每种课程类型可以包含很多门课程,每门课程最多只有一门先修课程。课程的属性包括课程编号、课程名称、课程介绍、开设学期、总学时、学分以及先修课程,教师的属性有教师编号、姓名、性别、出生日期、参加工作时间,职称的属性有职称编号和职称名称,课程类型的属性有课程类型编号和课程类型说明。

实验一学籍管理概念结构设计 1、实验目的 1)熟练掌握概念结构设计的方法 2)熟练掌握PowerDesigner进行CDM设计及检测CDM模型的方法 2、实验内容 PowerDesigner CDM可以描述概念结构,根据前面对学籍管理基本情况的描述,使用PowerDesigner进行学籍管理CDM设计。 3、实验步骤 1)选择file→new model→Conceptual Data Model,建立CDM模型(即概念数据模型)。 2)创建实体,在CDM的图形窗口中,单击设计元素面板上Entity工具(实体),再单击图形窗口的空白处,在单击的位置就出现一个实体符号。点击Pointer工具或右击鼠标,释放Entitiy工具。如图1-1所示。 图1-1 3)双击创建的实体符号,打开图1-2所示窗口,在此窗口“General”标签中可以输入实体的名称、代码、描述等信息。

相关文档
相关文档 最新文档