数据库原理课程设计.docx
- 文档编号:5803419
- 上传时间:2023-01-01
- 格式:DOCX
- 页数:15
- 大小:75.14KB
数据库原理课程设计.docx
《数据库原理课程设计.docx》由会员分享,可在线阅读,更多相关《数据库原理课程设计.docx(15页珍藏版)》请在冰豆网上搜索。
数据库原理课程设计
程号
201101_IMAU
编号
001
《数据库原理》
课程设计指导书
Version:
1.0
所在院系:
计算机信息工程学院
适合专业:
计算机信息相关专业
撰写人(签名):
完成日期:
2010-2011学年第二学期
目录
所在院系:
计算机信息工程学院1
适合专业:
计算机信息相关专业1
撰写人(签名):
王步钰1
实验一认识DBMS(2课时)3
实验二数据定义(2课时)5
实验三数据检索(4课时)7
实验四数据操作和视图(2课时)9
实验五使用ERWIN4.0完成ER图设计(2课时)10
实验六SQLServer数据库编程应用(4课时)12
实验七存储过程和触发器(选学)14
实验八作业、调度和报警系统(选学)15
实验一认识DBMS(2课时)
SQLServer2000基础
一、实验目的
1.掌握SQLServer2000产品特点及其安装部署方法,了解SQLServer系统数据库和用户数据库及其各自功能。
2.了解SQLServer2000组、数据库、数据转换服务、管理、复制、安全性、支持服务及元数据服务。
3.掌握SQLServer2000下创建简单的数据库、表的方法。
二、实验准备
1.了解SQLServer2000组;
2.了解SQLServer2000四个系统数据库及其作用;
3.了解SQLServer2000数据转化服务、管理、复制、安全性;
4.了解SQLServer支持服务和元数据服务。
三、试验平台
1.操作系统
1)WindowsXP/Vista/Win7
2)WindowsServer2000/2003/2008
2.数据库管理系统
1)SQLServer2000/2005/2008
四、实验内容
1.根据安装文件说明安装数据库管理系统
2.学会启动/停止MSSQLServer服务。
3.初步了解RDBMS的安全性,完成数据库的登录和登出。
4.查看SQLServer自带的四个系统数据库和两个示例数据库。
5.在“企业管理器”中创建名为student_course数据库。
6.在数据库student_course中创建基本表:
学生表(student),课程表(course),学生选课表(sc)。
表1学生课程数据库student_course的表结构
student
属性名
数据类型
可否为空
含义
Sno
Char(7)
否
学号(唯一)
Sname
Varchar(20)
否
学生姓名
Ssex
Char
(2)
否
性别
Sage
smallint
否
年龄
sdept
Char(5)
否
学生所在系
Course
属性名
数据类型
可否为空
含义
Cno
Char
(1)
否
课程号(唯一)
Cname
Varchar(20)
否
课程名称
cpno
Char
(1)
否
先行课程号
ccredit
smallint
可
学分
SC
属性名
数据类型
可否为空
含义
Sno
Char(7)
否
学号
Cno
Char
(1)
否
课程号
grade
Numeric(4,1)
可
成绩
7.向学生-课程student_course数据库中的各个表插入数据
向6中三个表中插入数据。
(数据见p82)
答:
createtableStudent
(Snochar(7)primarykey,
SnameVarchar(20)unique,
SsexChar
(2),
Sagesmallint,
SdeptChar(5)
);
select*fromStudent
createtableCourse
(Cnochar
(1),
CnameVarchar(20),
cpnoChar
(1),
ccreditsmallint
);
select*fromCourse
createtableSC
(SnoChar(7),
CnoChar
(1),
greadNumeric(4,1)
);
select*fromStudent
insertintoStudent(Sno,Sname,Ssex,Sage,Sdept)
values('2002151','李勇','男','20','CS')
insertintoCourse(Cno,Cname,Cpno,Ccredit)
values('1','数学','5','4')
altertableSCaltercolumnGreadchar
(2)
insertintoSC(Sno,Cno,Gread)
values('2001024','3','76')
五、实验报告内容
1.安装数据库SQLServer2000的步骤及遇见问题解决方法。
2.写出在“企业管理器”中创建数据库和表的一般步骤。
3.Numeric(4,1)是什么意思。
实验二数据定义(2课时)
一.实验目的
通过查询分析器的环境执行SQL脚本语句方式,学会创建、修改、删除基本表、索引等基本操作。
二.实验准备
1.复习对基本表、索引的创建、删除和修改操作;
2.复习Createtable、CreateIndex、Altertable、Droptable、dropindex等命令。
三.实验内容
1.启动MSSQLServer服务,打开EnterpriseMamager和QueryAnalyzer。
2.在QueryAnalyzer中用CreateTable命令创建Student_course数据库中的基本表:
学生表(student)、课程表(course)、以及成绩表(grade)。
3.验证下列各项操作:
1)学生表增加一属性nation(民族),数据类型为varchar(20)。
2)删除学生表中新增的属性Nation。
3)为学生创建一个名为IX_sname的索引,以姓名排序。
4)删除IX_sname索引。
四.实验步骤
1.打开“查询分析器”
有两种方法可进入“查询分析器”,一种是执行如下操作:
开始→MSSQLServer组→查询分析器;另一种是在“企业管理器”界面中操作:
工具→查询分析器。
2.在“查询分析器”的工具栏的数据库下拉选择框中,选中Student_course,使之成为当前操作的数据库,在编辑框中键入下列SQL语句,创建实验内容中要求完成的表。
3.按编辑框上方的图形菜单中的绿色箭头按钮,执行编辑框中的sql语句。
五.实验报告内容
1.写出用CreateTable语句对四个基本表的定义。
2.写出验证各项操作的SQL语句。
实验三数据检索(4课时)
一.实验目的
掌握数据检索SQL语句SELECT的应用,能使用Select语言对表作数据检索、数据过滤、数据计算、数据汇总、数据分组及连接检索等操作。
二.实验准备
1、复习SELECT语句的语法。
2、复习SQL中五种库函数:
AVG、SUM、MAX、MIN、COUNT。
3、复习连接查询,嵌套查询,集合查询。
4、用SQL语句完成下列各项操作:
(1)查询全体学生的学号和姓名。
(2)查询全体学生的详细记录。
(3)查询全体学生的姓名及其出生年份。
(4)查询全体学生的姓名、出生年份和所在院系,要求用大写字母表示所有系。
createtableStudent
(5)(Snochar(7)primarykey,
(6)SnameVarchar(20)unique,
(7)SsexChar
(2),
(8)Sagesmallint,
(9)SdeptChar(5)
(10));
(11)
(12)select*fromStudent
(13)
(14)createtableCourse
(15)(Cnochar
(1),
(16)CnameVarchar(20),
(17)cpnoChar
(1),
(18)ccreditsmallint
(19));
(20)
(21)select*fromCourse
(22)
(23)createtableSC
(24)(SnoChar(7),
(25)CnoChar
(1),
(26)greadNumeric(4,1)
(27));
(28)
(29)select*fromStudent
(30)
(31)insertintoStudent(Sno,Sname,Ssex,Sage,Sdept)
(32)values('2002151','李勇','男','20','CS')
(33)
(34)insertintoCourse(Cno,Cname,Cpno,Ccredit)
(35)values('1','数学','5','4')
(36)
(37)altertableSCaltercolumnGreadchar
(2)
(38)
(39)insertintoSC(Sno,Cno,Gread)
(40)values('2001024','3','76')
(41)
(42)altertableStudentaddnationvarchar(20)
(43)
(44)altertableStudentdropcolumnnation
(45)
(46)createuniqueindexLX_snameonStudent(Sname)
(47)
(48)selectSno,Sname
(49)fromStudent
(50)
(51)select*
(52)fromStudent;
(53)
(54)selectSname,Sdept
(55)fromStudent;
(56)
(57)查询被选修了的课程的课程号。
(58)查询年龄在20-23岁(含20,不含23岁)之间学生的姓名,性别和年龄。
(59)查询计算机系和数学系的学生学号、姓名和系别。
(60)查询姓“欧阳”且全名为4个汉字的学生的姓名、年龄。
(61)查询以“DB%”开头,且倒数第3个字符为a、倒数第2个字符是a或者b
或者c的课程的详细情况。
(62)查询所有有成绩的学生学号和课程号。
(63)练习例26-30(课本p99)。
(64)查询选修了3号课程的学生的学号及其成绩,结果按分数升序排列。
(65)查询每个学生及选修课程的情况。
(66)查询每一门课的间接先修课。
(67)查询选修3号课程且成绩在60分以下的所有学生的学号、姓名。
(68)查询跟“张扬”在同一系学习的学生。
(69)查询选修了课程名为“数据库原理”的学生学号和姓名。
(70)找出每个学生超过他选修课程平均成绩的课程号。
(71)练习例42-43.(P108)
(72)练习例48-52.(P112)
三.实验内容
1、验证完成各项操作的SQL语句。
2、检验下面语句是否正确:
SELECTeno,basepay,service
FROMsalary
WHEREbasepay 四.实验报告内容 1.写出完成各项操作的SQL语句。 2.实习内容2的SQL语句是否正确? 如果不正确,请写出正确的语句表达式。 3.使用存在量词[NOT]EXISTS的嵌套查询时,何时外层查询的WHERE条件为真,何时为假。 实验四数据操作和视图(2课时) 一、实验目的 1.掌握用数据操作SQL语句对已建基本表完成操作: 修改update、删除delete、插入insert数据操作SQL语句。 2.掌握创建、删除和查询视图的方法,验证可更新视图和不可更新视图。 二、实验准备 1.复习UPDATE,INSERT,DELETE语句格式的使用。 2.复习视图概念。 3.复习UPDATE、DELETE、INSERT语句与自查询的结合使用。 4.用SQL语句完成下列各项操作: (1)将课程表中的“信息系统”课程记录删除。 (2)将计算机系的学生选课信息建立视图CS_VIEW。 (3)将一条成绩记录(‘0100201’,‘1’)插入到成绩表中。 (4)修改学号为“2001110”的学生的成绩为70分。 三、实验内容 1.验证各项操作的SQL语句。 2.建立一个视图dept_grade,用来反映每个系的所有选修课的平均成绩,并对其进行更新操作。 四、实验报告内容 1.写出完成各项操作的SQL语句。 2.实验内容2创建的视图能否进行更新? 为什么? 实验五使用ERWIN4.0完成ER图设计(2课时) 一.实验目的 1.了解ERWIN工具的使用方法,掌握提交/模式生成引擎和反转引擎; 2.掌握ER图的设计及数据库的反转; 3.能够利用ERWIN工具实现ER模型到逻辑、物理模型的转化。 二.实验准备 1.阅读ERWIN说明文档及ER图的表示方法; 2.了解ERWIN的logical、physical、logical/physical模型及其区别; 3.掌握反转引擎; 4.掌握提交/生成模式引擎。 三.实验内容 1.打开ComputerAssociatesERwin4.0软件,选择默认路径打开程序EMOVIES.ER1; 2.利用反转引擎,生成SQLServer2000下自带数据库pubs的ER逻辑物理模型; 3.创建工厂物资管理逻辑模型,并将其生成SQLServer2000模式。 四.实验步骤 实验过程中详细讲解。 五.实验报告内容 1.提交数据库pubs反转后的ER模型图及完成步骤; 2.设计工厂物资管理概念模型及转化为SQLServer2000数据模式的步骤。 六.思考题 1.深入理解概念模型、逻辑模型、物理模型及其在数据库设计中的体现? 2.ERWIN是如何实现反转及生成模式的? NorthWind数据库反转生成的ER图 实验六SQLServer数据库编程应用(4课时) 一、实验目的 1.利用JSP+JavaBean+SQLServer构建数据库应用开发平台。 2.了解ODBC和JDBC的数据库访问技术。 二、实验准备 1.熟悉JSP简单语法,会简单的界面设计。 2.复习ODBC、JDBC的知识。 3.完成完整的流量传感器数据显示功能。 三、实验内容 1.配置ODBC、部署JDBC。 2.分别以ODBC方式和JDBC方式连接数据库。 四、实验步骤: 1.具体配置ODBC (1)打开Windows控制面板→性能和维护→管理工具→双击(ODBC)图标→弹出”ODBC数据源管理器”窗口。 (2)选择“系统DSN”选项卡,单击“添加”按钮,弹出“创建新数据源”对话框。 (3)从列表框选择”SQLSever”,然后单击”完成“按钮。 (4)在对话框中设置如下: 名称: Test,描述: 测试,服务器: local (5)单击”下一步“按钮。 (6)设置数据源的登陆方式 i.如果选择”使用网络登陆ID的WindowsNT验证“单选按钮,则采用Windows的用户名和密码登陆SQLSever服务器。 ii.如果选择”使用用户登陆ID和密码的SQLSever验证“单选按钮,”登陆ID“和”密码“文本框将被激活。 (7)设置好验证方式后,单击”下一步“按钮。 (8)在对话框中,更改默认数据库为所要选择的数据库,还可以更改附加数据库文件名和ANSI标志。 设置好单击”下一步“按钮。 (9)单击”完成“按钮,这时系统会弹出”ODBCMicrosoftSQLSever安装“。 (10)单击”测试数据源“按钮,如果正确创建”测试结果“对话框将显示测试成功信息。 此时Test数据源设置成功。 2.连接数据库 (1)ODBC Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");//loaddriverconn=DriverManager.getConnection("jdbc: odbc: sss","sss","123456"); //getconnection stmt=onn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE); //generationsqlstatement (2)JDBC Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");//loaddriverconn=DriverManager.getConnection("jdbc: microsoft: sqlserver: //127.0.0.1: 1433;DatabaseName=sensor","admin","ilyforfor");//getconnection 四、实验报告内容 1.什么是ODBC、JDBC? 2.两种方式连接数据库的过程及区别? 如何连接SQLServer2005数据库? 实验七存储过程和触发器(选学) 一、实验目的 1.掌握存储过程的概念、作用和创建方法。 2.掌握触发器的概念、作用和创建方法。 二、实验准备 1.复习存储过程的相关知识。 2.复习触发器的相关知识。 3.了解T_SQL中存储过程的参数调用。 4.完成下列两小题: (1)创建一存储过程: 根据学生学号查询学生选修课的成绩,学号作为参数输入。 (2)创建一存储过程: 用来传入的参数是班级名,判断该班级中是否已有学生存在。 若有,存储过程返回1;若没有,存储过程返回0。 5.了解SQLServer中触发器的创建方法,特别是临时表Inserted和Deleted的使用。 6.完成下列两小题: (1)为成绩管理数据库中的student表创建一触发器: 当向表插入或删除记录时,修改class表中的相应班级的人数。 (2)为class表建一个更新触发器: 当更新班长学号时,检查新输入的学号是否为同一班级的学生学号,若不是,给出适当的提示信息。 三、实验内容 1.验证在查询分析器中创建的两个存储过程,其SQL语法的正确性。 2.企业管理器中操作: 展开Student_course数据库,选择“存储过程”节点,从右侧窗口查看刚创建的两个存储过程,必要时可进行修改。 3.验证在查询分析器中创建的两个触发器,其SQL语法的正确性。 4.在企业管理器中操作: 展开Student_course数据库,右击鼠标,选择“所有任务”的“编辑触发器…”,查看刚创建的两个触发器,必要时可进行修改。 四、实验报告内容 1.写出建立两个存储过程的SQL定义语句。 2.写出建立两个触发器的SQL定义语句。 实验八作业、调度和报警系统(选学) 一、实验目的 1、掌握数据库中作业的作用; 2、掌握调度的作用 3、了解报警系统的作用及其使用方式 二、实验准备 1、了解流量传感器采集的瞬时数据及汇总处理的存储过程; 2、配置邮件管理客户端及系统邮件配置文件生成; 三、实验内容 1、创建作业; 2、创建调度; 3、设置报警机制。 四、实验报告内容 提供作业、调度创建步骤及代码,说明报警发生条件。 ……
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 原理 课程设计
![提示](https://static.bdocx.com/images/bang_tan.gif)