ImageVerifierCode 换一换
格式:DOCX , 页数:56 ,大小:1.02MB ,
资源ID:28723168      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/28723168.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(数据库原理实验教案.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

数据库原理实验教案.docx

1、数据库原理实验教案数据库原理与应用实验教 案实验班级:计 科 0901实验教师: 高 汉 平 2010年9月数据库原理与应用实验教学 数据库技术是计算机科学中发展最快的领域之一,也是应用最广的技术之一,它已成为计算机信息系统与应用系统的核心技术和础。本课程是计算机专业的必修课程。通过本课程的学习,使学生理解数据库系统的基本原理:包括数据库的一些基本概念,各种数据模型的特点,关系数据库基本概念,SQL语言,关系数据理论,数据库的设计理论。掌握数据库应用系统的设计方法、了解数据库技术的发展动向,以指导今后的应用。 实践方面:要求学生利用数据库的原理知识和实用工具动手开发数据库应用系统。其最终目的是

2、培养学生运用数据库技术解决问题的能力,激发他们在此领域中继续学习和研究的愿望。 为了达到这个目的,除了对关系数据库系统的基本概念、原理和方法进行介绍之外,本课程的另外一个特点是强调课程的实践性。实验的目的是为了配合课堂教学,进一步强化对数据库原理的理解。实验一 安装SQL Server 2000一、实验目的SQL Server 2000是Mircosoft公司推出的关系型网络数据库管理系统,是一个逐步成长起来的大型数据库管理系统。本次实验了解SQL Server 2000的安装过程,熟悉SQL Server 2000软件环境。学会安装SQL Server 2000的安装。二、实验内容1安装Mi

3、crosoft的数据库服务软件SQL Server 2000:运行服务器目录SQL2000下的可执行文件autorun.exe,进行SQL Server 2000的安装。安装主界面如图1-1所示。图1-1选择安装SQL Server 2000组件,出现组件安装界面,如图1-2所示。图1-2选择安装数据库服务器,进入SQL Server 2000的安装向导,如图1-3所示。图1-3点击“下一步”,到计算机名称对话框,如图1-4所示。图1-4“本地计算机”是默认选项,本地计算机的名称就显示在上面,点击“下一步”,出现安装选择对话框,如图1-5所示。图1-5选择“创建新的SQL Server实例,或

4、安装客户端工具”,点击“下一步”,出现用户信息对话框,如图1-6所示。图1-6输入姓名和公司名称后,点击“下一步”,出现软件许可协议,如图1-7所示。图1-7点“是”按钮,出现安装定义对话框,如图1-8所示。图1-8选择“服务器和客户端工具”,点击下一步,出现实例名对话框,如图1-9所示。图1-9系统提供了“默认”复选框,点击下一步,出现安装类型选择框,如图1-10所示。图1-10选择典型,点击“下一步”,出现服务帐户对话框,如图1-11所示。图1-11接受系统的缺省值,点击“下一步”,出现身份验证模式窗口,如图1-12所示。图1-12接受系统的缺省值,点击“下一步”,出现开始拷贝文件窗口,如

5、图1-13所示。图1-13点击“下一步”,开始将文件拷贝到选择的目录中,如图1-14所示。图1-14文件拷贝完成后,出现安装结束界面,如图1-15所示。图1-15点击“完成”按钮,完成SQL Server 2000的安装。三、实验任务1在计算机上安装数据库软件SQL Server 2000;2熟悉软件的使用,SQL Server 2000主菜单如图1-16所示:图1-16实验二 启动SQL Server2000和在企业管理器下建库和表一、实验目的SQL Server 2000的启动和管理工作由服务管理器和企业管理器来实现。本次实验了解SQL Server 2000的启动,熟悉如何在SQL Se

6、rver 2000图形环境下建立数据库和表。学会安装SQL Server 2000的启动和建库、表的操作。二、实验内容1启动数据库服务软件SQL Server 2000:在程序菜单中选择Microsoft SQL Server,如图2-1所示:图2-1再选中服务管理器,如图2-2所示:图2-2点击服务管理器后,出现SQL Server服务管理器,如图2-3所示:图2-3点击“开始/继续”按钮,启动SQL Server 2000数据库服务。启动成功后,在时钟旁边出现一个符号,如图2-4所示。图2-42在SQL Server 2000中建立数据库:在程序菜单中选择Microsoft SQL Ser

7、ver,如图2-5所示:图2-5再选中企业管理器,如图2-6所示:图2-6点击企业管理器后,出现企业管理器的主界面,如图2-7所示:图2-7点击左边树状控制栏的+/号可以打开和关闭SQL Server组中的本地服务项目,在选中数据库服务项目后,单击鼠标右键,出现数据库的菜单,如图2-8所示:图2-8点击新建数据库,出现新建数据库窗口,如图2-9所示:图2-9输入数据库名称:Test,点击数据文件选项卡,如图2-10所示:图2-10在数据文件中,你可以设定数据文件的名称,所在目录以及文件的大小等信息。完成后点击事务日志选项卡,如图2-11所示:图2-11事务日志中,你可以设定日志文件的名称,所在

8、目录以及文件的大小等信息。接受系统的缺省值,点击确定按钮,完成数据库的新建,如图2-12所示。图2-123.在Test数据库上建立表:点击数据库Test前面的号,打开数据库的各种属性,如图2-13所示:图2-13选中表的属性,单击鼠标右键,出现表的菜单,如图2-14所示:图2-14点击新建表按钮,出现新建表窗口,如图2-15所示:图2-15输入列名,数据类型,长度等信息,点击图标,出现选择表名窗口,如图2-16所示:图2-16输入表名,点击确定按钮,将新建的表存盘。三、实验任务1用数据库SQL Server 2000的服务管理器启动数据库服务;2用数据库SQL Server 2000的企业管理

9、器建立一个数据文件名为demodata、大小50M,日志文件名为demolog、大小25M的新数据库,该数据库名为Demo。3在数据库Demo上,建立如下所示的表customer:字段名类型长度含义customidvarchar17顾客编号namevarchar10姓名sexvarchar2性别ageint4年龄xfgdec10,2消费金额addressvarchar50地址memovarchar100备注说明:需写实验报告(1)。实验三 SQL Server2000查询分析器的使用一、实验目的SQL Server 2000的查询分析器是一种特别用于交互式执行SQL语句和脚本的极好的工具。本次

10、实验了解SQL Server 2000查询分析器的启动,熟悉如何在SQL Server 2000查询分析器中建表、插入记录、查询记录。学会SQL Server 2000的查询分析器中建表、插入记录、查询记录。二、实验内容1启动数据库服务软件SQL Server 2000的查询分析器:在程序菜单中选择Microsoft SQL Server,如图3-1所示:图3-1再选中查询分析器,如图3-2所示:图3-2点击查询分析器后,出现连接到SQL Server窗口,如图3-3所示:图3-3点击按钮,出现选择服务器窗口,如图3-4所示。图3-4选择本地服务(Local),点击确定按钮。再点击连接到SQL

11、 Server窗口的确定按钮。出现SQL查询分析器主界面,如图3-5所示。图3-5选择查询菜单,点击更改数据库,如图3-6所示。图3-6出现选择数据库窗口,如图3-7所示。图3-7选择在上次实验中建立的数据库Test,点确定按钮。2在查询分析器中建立表:在查询分析器的查询窗口中输入SQL语句,如图3-8所示。图3-8点击按钮,执行该SQL语句,在查询窗口下部出现一个输出窗口,如图3-9所示。图3-9提示命令成功完成,或者报告出错信息。3.查询分析器中向表添加数据:在查询分析器的查询窗口中输入SQL语句,如图3-10所示。图3-10点击按钮,执行该SQL语句,在查询窗口下部出现一个输出窗口,如图

12、3-11所示。图3-111 从表中查询数据:在查询分析器的查询窗口中输入SQL语句,如图3-12所示。图3-12点击按钮,执行该SQL语句,在查询窗口下部出现一个输出窗口,如图3-13所示。图3-13三、实验任务1打开数据库SQL Server 2000的查询分析器,用SQL语言建表student,表结构如下图所示:字段名类型长度含义idvarchar17学生编号namevarchar10姓名sexvarchar2性别ageinteger年龄scorenumeric6,2总成绩2用SQL语言向表student插入如下6条记录:A0001赵一男20580.00B0002钱二女19540.00C0

13、003孙三男21555.50D0004李四男2248000E0005周五女20495.50F0006吴六男19435.003 练习查询语句,查找年龄大于等于20岁,成绩低于500分的记录。实验四 SQL单表查询语句实验实验目的与要求:目的是熟练掌握开发环境的功能和使用方法,掌握在开发环境下SQL语言中数据操纵的语句,掌握程序下对表中数据的操作。实验内容:(说明:需写实验报告(1))select语句中各种查询条件的实验并写出查询结果。 例1 查询全体学生的学号与姓名。SELECT Sno,SnameFROM Student;例2 查询全体学生的姓名、学号、所在系。SELECT Sname,Sno

14、,SdeptFROM Student;例3 查询全体学生的详细记录。SELECT Sno,Sname,Ssex,Sage,Sdept FROM Student;或SELECT *FROM Student;例4 查全体学生的姓名及其出生年份。SELECT Sname,2000-SageFROM Student;例5 查询全体学生的姓名、出生年份和所有系,要求用小写字母表示所有系名。SELECT Sname,Year of Birth: ,2000-Sage,ISLOWER(Sdept)FROM Student;实验五 SQL连接查询语句实验查询一、.实验目的与要求:标准SQL连接查询、嵌套查询,

15、规则、形式较多,需要学生多记,多练,在练习中加强理解、记忆。二、.实验内容:(说明:需写实验报告(2))SQL连接查询、嵌套查询并写出查询结果。SQL中连接查询的主要类型 广义笛卡尔积、 等值连接(含自然连接)、非等值连接查询、自身连接查询、外连接查询、复合条件连接查询1、广义笛卡尔积 不带连接谓词的连接很少使用例: SELECT Student.* , SC.* FROM Student, SC2、等值与非等值连接查询 等值连接、自然连接、非等值连接例1 查询每个学生及其选修课程的情况。SELECT Student.*,SC.*FROM Student,SCWHERE Student.Sno

16、 = SC.Sno;自然连接等值连接的一种特殊情况,把目标列中重复的属性列去掉。例2 对例32用自然连接完成。 SELECT Student.Sno,Sname,Ssex,Sage, Sdept,Cno,Grade FROM Student,SC WHERE Student.Sno = SC.Sno;3、自身连接 一个表与其自己进行连接,称为表的自身连接需要给表起别名以示区别由于所有属性名都是同名属性,因此必须使用别名前缀例3 查询每一门课的间接先修课(即先修课的先修课) SELECT FIRST.Cno,SECOND.Cpno FROM Course FIRST,Course SECOND

17、WHERE FIRST.Cpno = SECOND.Cno; 4、外连接(Outer Join) 例 4 查询每个学生及其选修课程的情况包括没有选修课程的学生-用外连接操作SELECT Student.Sno,Sname,Ssex, Sage,Sdept,Cno,Grade FROM Student,SC WHERE Student.Sno = SC.Sno(*); 在表名后面加外连接操作符(*)或(+)指定非主体表,非主体表有一“万能”的虚行,该行全部由空值组成,虚行可以和主体表中所有不满足连接条件的元组进行连接,由于虚行各列全部是空值,因此与虚行连接的结果中,来自非主体表的属性值全部是空值

18、 左外连接:外连接符出现在连接条件的左边 右外连接:外连接符出现在连接条件的右边 5、复合条件连接WHERE子句中含多个连接条件时,称为复合条件连接 例6 查询每个学生的学号、姓名、选修的课程名及成绩。 SELECT Student.Sno,Sname,Cname,Grade FROM Student,SC,Course WHERE Student.Sno = SC.Sno and SC.Cno = Course.Cno; 嵌套查询嵌套查询概述一个SELECT-FROM-WHERE语句称为一个查询块将一个查询块嵌套在另一个查询块的WHERE子句或HAVING短语的条件中的查询称为嵌套查询 SE

19、LECT Sname 外层查询/父查询 FROM Student WHERE Sno IN (SELECT Sno 内层查询/子查询 FROM SC WHERE Cno= 2 );实验六 SQL数据更新语句实验一、实验目的与要求:目的是熟练掌握开发环境的功能和使用方法,掌握在开发环境下SQL语言中数据操纵的语句,掌握程序下对表中数据的操作。二、实验内容:(说明:需写实验报告(3))update、delete、insert 语句的练习并写出结果。数据更新描述: 数据更新包括三种操作:1. 插入数据 2. 修改数据 3. 删除数据 1 . 插入数据两种插入数据方式:插入单个元组;插入子查询结果1)

20、. 插入单个元组语句格式INSERTINTO (,)VALUES ( , )功能 将新元组插入指定表中。例1 将一个新学生记录(学号:95020;姓名:陈冬;性别:男;所在系:IS;年龄:18岁)插入到Student表中。 INSERT INTO Student VALUES (95020,陈冬,男,IS,18);例2 插入一条选课记录( 95020,1 )。 INSERT INTO SC(Sno,Cno) VALUES ( 95020 , 1 ); 新插入的记录在Grade列上取空值2). 插入子查询结果 例3 对每一个系,求学生的平均年龄,并把结果存入数据库。第一步:建表 CREATE T

21、ABLE Deptage (Sdept CHAR(15) /* 系名*/ Avgage SMALLINT); /*学生平均年龄*/第二步:插入数据 INSERT INTO Deptage(Sdept,Avgage) SELECT Sdept,AVG(Sage) FROM Student GROUP BY Sdept;2. 修改数据1. 修改某一个元组的值例4 将学生95001的年龄改为22岁。 UPDATE Student SET Sage=22 WHERE Sno= 95001 ; 2. 修改多个元组的值例5 将所有学生的年龄增加1岁。 UPDATE Student SET Sage= Sa

22、ge+1;3. 删除数据1. 删除某一个元组的值例8 删除学号为95019的学生记录。 DELETE FROM Student WHERE Sno=95019;2. 删除多个元组的值例9 删除2号课程的所有选课记录。 DELETE FROM SC; WHERE Cno=2;3. 带子查询的删除语句例11 删除计算机科学系所有学生的选课记录。 DELETE FROM SC WHERE CS= (SELETE Sdept FROM Student WHERE Student.Sno=SC.Sno);实验七 数据库的安全性和数据库完整性一、实验目的与要求:熟练掌握数据库的安全性和数据库完整性的功能和

23、使用方法,掌握在开发环境下SQL语言中数据库的安全性和数据库完整性的语句操作。二、实验内容:(说明:需写实验报告(4))1数据库的安全性(1). 数据库的授权(GRANT)GRANT语句的一般格式: GRANT ,. ON TO ,. WITH GRANT OPTION;GRANT功能:将对指定操作对象的指定操作权限授予指定的用户。例1 把查询Student表权限授给用户U1 GRANT SELECT ON TABLE Student TO U1;例2 把对Student表和Course表的全部权限授予用户U2和U3 GRANT ALL PRIVILIGES ON TABLE Student,

24、 Course TO U2, U3;例3 把对表SC的查询权限授予所有用户 GRANT SELECT ON TABLE SC TO PUBLIC;例4 把查询Student表和修改学生学号的权限授给用户U4 GRANT UPDATE(Sno), SELECT ON TABLE Student TO U4;例5 把对表SC的INSERT权限授予U5用户,并允许他再将此权限授予其他用户 GRANT INSERT ON TABLE SC TO U5 WITH GRANT OPTION;执行例5后,U5不仅拥有了对表SC的INSERT权限, 还可以传播此权限: 例6 GRANT INSERT ON T

25、ABLE SC TO U6 WITH GRANT OPTION; 同样,U6还可以将此权限授予U7: 例7 GRANT INSERT ON TABLE SC TO U7; 但U7不能再传播此权限。 U5- U6- U7(2)收回权限(REVOKE)REVOKE语句的一般格式为: REVOKE ,. ON FROM ,.;功能:从指定用户那里收回对指定对象的指定权限例9 收回所有用户对表SC的查询权限 REVOKE SELECT ON TABLE SC FROM PUBLIC; 例10 把用户U5对SC表的INSERT权限收回 REVOKE INSERT ON TABLE SC FROM U5;

26、2. 数据库完整性什么是数据库的完整性数据的正确性和相容性防止不合语义的数据进入数据库。例: 学生的年龄必须是整数,取值范围为14-29; 学生的性别只能是男或女; 学生的学号一定是唯一的; 学生所在的系必须是学校开设的系;完整性:是否真实地反映现实世界数据库的完整性分为实体完整性、 参照完整性、用户定义的完整性。例11将student表中在Sno属性定定义为码。 CREATE TABLE student ( Sno char(16) PRIMARY KEY, Sname char(10) NOT NULL, Ssex char(2), Sage SMALLINT, Sdept char(20

27、);例11定义SC中的参照完整性。CREATE TABLE SC( Sno char(16) NOT NULL,Cno char(4) NOT NULL,Grade SMALLINT,PRIMARY KEY(Sno,Cno),FOREIGN KEY (Sno) REFERENCES student(Sno),FOREIGN KEY (Cno) REFERENCES Course(Cno);实验八 嵌入式SQL访问数据库1、实验内容:(说明:需写实验报告(5))编写嵌入式C程序,编程实现了对“学生课程数据库”的访问和操作:对Student表中年龄进行更新。系统每输出一个学生记录,询问用户是否更新

28、。如果要更新,就输入新的年龄。2.嵌入式SQL要求要求:将一段连续的SQL操作写成嵌入到C程序中的程序,调试程序,使得程序能完成一项复杂的数据处理功能,并提交程序。嵌入式SQL由SQL语句和C/C+代码组成。其中SQL语句由预处理器翻译成C或C+的源代码。对预处理后的源代码进行编译、链接生成可执行程序后方可运行。3、嵌入式SQL访问数据库程序清单#include#includeEXEC SQL BEGIN DECLARE SECTION; char deptname20; char HSno9; char HSname20; char HSsex4; int HSage; int NEWAGE;EXEC SQL END DECLARE SECTION; long SQLCODE; EXEC SQL INCLUDE sqlca; int main() int count=0; char yn; printf(请输入您要更新的系名(Sdept):); scanf(%s,&deptname); EXEC SQL CONNECT TO 服务器名.数据库名 USER

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1