基于ER图的数据库设计与简单操作管理信息系统.docx
- 文档编号:24965628
- 上传时间:2023-06-03
- 格式:DOCX
- 页数:17
- 大小:1.02MB
基于ER图的数据库设计与简单操作管理信息系统.docx
《基于ER图的数据库设计与简单操作管理信息系统.docx》由会员分享,可在线阅读,更多相关《基于ER图的数据库设计与简单操作管理信息系统.docx(17页珍藏版)》请在冰豆网上搜索。
基于ER图的数据库设计与简单操作管理信息系统
实验报告
实验名称:
基于ER图的数据库设计与简单操作
班级:
姓名:
学号:
实验时间:
2010年5月18日
成绩:
指导老师:
一、实验目的:
(1能够正确运用数据库的基本理论和方法。
(2熟悉常用关系型数据库的设计和基本操作。
(3熟悉关系数据库规范化设计理论,能够设计并建立科学合理的数据库,正确建立数据库中表与表之间的关系。
(4进一步正确理解数据库设计思路,培养分析问题、解决问题的能力,提高查询资料和撰写书面文件的能力。
二、实验设备及主要内容
实验设备:
“MicrosoftSQLServer”——“企业管理器”和“查询分析器”主要内容:
1.高等院校学生补考管理业务需求描述。
高等院校补考管理系统应具备编辑补考学生信息、安排补考时间地点等基本管理功能,具体要求如下:
3对教室的编号、地点和容纳人数进行编辑。
4自动安排补考的时间、地点(即教室。
5录入学生的补考成绩。
6分别按照院系、专业、班级等查询参加补考的学生信息。
7按照补考的时间和地点查询参加补考的学生信息。
8查询和打印补考时间、地点的安排。
9查询和打印补考不及格学生的信息。
2.设计数据库。
根据上述业务描述,设计数据库总体方案,明确数据库中表的结构,各表中关键字的设置,表与表之间的关系。
3.根据功能需求,以SQL语句的形式分类列出系统应涉及的数据操作。
4.利用Access、VFP或SQLserver建立数据库,并成功实现基本数据操作。
5.提交书面实验报告。
三、实验步骤
步骤一:
按照上述要求进行数据库和表的设计。
具体包括:
领域描述、概念模型用E-R图描述、从E-R图导出关系数据模型。
步骤二:
选择Access、VFP或SQLserver实现数据库操作。
1、概念模型用E-R图描述
2、从E-R图导出的关系数据模型
学生补考管理系统的逻辑结构如下:
院系信息表:
Department(deptID,deptName
班级信息表:
Class(className,studentNum,deptID
课程信息表:
Course(courselD,courseName,deptID
学生信息表:
Student(studentID,studentName,className
补考记录表:
Bk—stud(studentID,courseID,reason,score
3、选择SQLserver、Access、VFP实现数据库操作的基本步骤。
用MSSQLSEVER实现数据库的操作
1使用“企业管理器”实现数据库的操作
①创建数据库。
点击桌面上“开始”菜单,选择“MicrosoftSQLServer”——
“企业管理器”,进入控制台根目录界面。
双击目录MicrosoftSQL
Servers进入子目录SQLServer组。
双击子目录SQL
Server组进入下一级子目录“local”,继续双击“local”,将出现如图1所示的“local”目录下的全部内容。
图1
双击数据库文件夹。
在右边空白处点右键,出现如图2所示的界面。
点击新建数据库进入数据库属性界面,如图3所示。
在该界面里,我们为所创建的数据库起个名称如“temdb”,点“确定”按钮。
图2
图3
②创建数据库表。
在图2中双击“temdb”图标,进人数据库属性界面。
点击“确定”按钮,进入temdb数据库项目界面,如图4所示。
图4
在空白处点右键,选择“新建/表”菜单,将进入图5所示的界面。
在该界面我们将完成表的结构的设计。
以院系信息表为例来完成表结构的设计。
在“列名”下填入字段的名称,如“deplD”;在第二列“数据类型“的下拉框里选择我们需要的类型,在这里选择char型的,根据要求将长度改为10个字符。
因为deplD是主键,所以我们点击工具栏里的小钥匙,将deplD设为主键。
按照同样的方法可以完成字段depName
的设置。
完成之后的界面如图6所示。
然后点击工具栏里的保存图标,将出现一个保存界面,在该界面中输入表的名称。
在文本框里输入“depar
tment”,如图7所示,将该表保存为department。
图5
图6
图7
按照同样的方法可以完成表class、course、student、bk—stud的结构设计。
③向表中插入数据(仍然以院系信息表为例。
在图8所示的“企业管理器”环境里选中“department”点右键,选择菜单“打开表/返回所有的行”,进入图9所示的添加表中的数据界面。
将用户数据依次填入,关闭该界面之后,数据自动存人数据库。
按照同样的方法可以依次完成对表class、course、student、bk—stud的数据的添加。
图8
图9
2使用查询分析器实现对表的操作。
①创建数据库。
点击桌面上菜单“开始”,选择“MicrosoftSQLServer”——
“查询分析器”,打开查询分析器。
刚打开的查询分析器中有一查询窗口,如图10所示。
在查询窗口中输入SQL语句。
下面的这条语句创建名为temdb的数据库,
图10
并创建相应的主文件和事务日志文件:
createdatabasetemdb
点击查询分析器工具栏上的执行按钮(或右键点击查询窗口,在弹出菜单中选择“执行”。
消息窗口显示命令执行结果。
②创建表。
点击桌面上“开始”菜单,选择“MicrosoftSQLServer”一“查询分析
器”,打开查询分析器。
刚打开的查询分析器中有一查询窗口。
在查询窗口中输入SQL语句(注意:
SQL语句中的所有标点符号要用英文标
点,下同,如:
createtabletemdb.dbo.department(deptlDchar(2primarykey,deptName
char(20
点击查询分析器工具栏上的执行按钮(或右键点击查询窗口,在弹出菜单中选择“执行”,执行结果见图11。
消息窗口显示命令执行结果。
图11
根据以上步骤,分别执行以下SQL语句创建表class、course、studentjbk—stud:
createtabletemdb.dbo.class(
classNamechar(7primarykey,
studentNumint,
deptIDchar(2foreignkeyreferencesdepartment
createtabletemdb.dbo.course(
courselDchar(6,
courseNamechar(40,
deptIDchar(2
createtabletemdb.dbo.student(
studentIDchar(9primarykey,
studentNamechar(6,
classNamechar(7foreignkeyreferencesclass
createtabletemdb.dbo.bk_stud(
studentIDchar(9,
courselDchar(6,
reasonchar(20,
scoreint,
primarykey(studentID,courselD,
foreignkey(studentIDreferencesstudent,
foreignkey(courseIDreferencescourse
以上SQL语句正确执行后,可以从企业管理器中看到已创建的五个表。
这个表的类型都是“用户”,如图12所示。
图12
③向表中插入数据。
在查询窗口中执行SQL语句,如:
insertintoterndb.dbo.departmentvalues('06','管理学院'向department
表中插人数据,消息窗口显示执行结果正确,如图13所示。
图13
在查询窗口中分别执行以下SQL语句,完成基本数据的插入。
i’nsertintotemdb.dbo.departmentvalues(’08’,’土木学院’
insertintotemdb.dbo.classvalues(’信管011’,40,’06’
insertintotemdb.dbo.classvalues(’信管012’,38,’06’
insertintotemdb.dbo.classvalues(’工本011’,38,’08’
insertintotemdb.dbo.coursevalues('060123’,’管理信息系统’,’06’insertintotemdb.dbo.coursevalues('060125’,’数据库系统原
理’,’06’
insertintotemdb.dbo.coursevalues('080110’,’高层建筑’,’08’
insertintotemdb.dbo.studentvalues('200106001’,’马小跳’,’信
管011’
insertintotemdb.dbo.studentvalues('200106150’,’李二狗’,’信
管012’
insertintotemdb.dbo.studentvalues('200108110’,’张三丰’,’工本011’
insertintotemdb.dbo.bk—studvalues('200106001’,’060123’,’因病缺考’,89insertintotemdb.dbo.bk—studvalues('200106001’,’080110’,’因病缺考’,78
insertintotemdb.dbo.bk—studvalues('200106150’,’060125’,’缓考’,75
insertintotemdb.dbo.bk—studvalues('2001081i0’,’060123’,’考试作弊’,60
insertintotemdb.dbo.bk—studvalues(’200108110’,’080110’,’因故缓考’,66
④查询表中数据。
单表查询:
查询department表的全部信息,在查询窗口中执行以下SQL语句:
Select+fromdepartment
本查询语句中“+”代表要显示表的全部属性。
自己动手执行以下SQL语句,观察执行结果有什么不同。
Select+fromdepartmentwheredeptlD=’06’
两表查询:
以上查询信息均来自同一个表,但有的查询信息要来自多个表,如查询所有课程名称及其开课院系,则需要同时查询表course和depa~一ment,SQL语句为:
selectcourse.courseName,department.deptName
fromcourse,department
wherecourse.deptID=department.deptID
三表查询:
查询学生姓名、补考课程名称和补考成绩,需要同时查询表student、bk—stud、course,SQL语句为:
selectstudent.studentName,course.CourseName,bk—studscore
fromstudent,bk—stud,course
wherestudent.studentID=bk—studstudentIDandbk—studcourselD=course.courseID执行结果见图14。
图14
⑤修改表中数据。
在查询窗口中执行以下SQL语句:
UPDATEStudent
SETstudentID='200106100'
WHEREstudentName='马小跳'
这个操作的结果是把“马小跳”的学号变为200106100。
⑥删除表中的行。
在查询窗口中执行以下SQL语句:
DELETEFROMstudent
WHEREstudentID=’200106100’
这条语句的执行结果是删除表student中学号为200106100的行。
四、实验体会和实验中存在的问题。
这次实验主要用到了数据库的企业管理器和查询分析器,这些曾在数据库这门课程中学习过,但是有很多知识都已经遗忘。
这次的实验让我重新温习了企业管理器和查询分析器的使用方法,以及用SQL语句编写程序代码。
实验期间用SQL语言编写时出现了大小写使用不匹配的问题,经过运行和修改,找出问题源并加以改正。
此次实验加强了我的编程能力,培养了我的独立思考能力。
用理论知识与实践相结合,更加深刻了我对这门课的认识,巩固了我的理论知识。
五、问题思考
(1什么是数据库?
数据库是按数据结构来存储和管理数据的计算机软件系统。
(2什么是主码?
什么是外码?
主码是当一个关系有多个候选码时,应选定其中的一个为主码。
外码:
设F是基本关系R的一个或一组属性,但不是关系R的主码(或候选码。
如果F与基本关系S的主码Ks相对应,则称F是基本关系R的外码。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 ER 数据库 设计 简单 操作 管理信息系统