《数据库原理与应用》实验教案13.docx
《《数据库原理与应用》实验教案13.docx》由会员分享,可在线阅读,更多相关《《数据库原理与应用》实验教案13.docx(64页珍藏版)》请在冰豆网上搜索。
《数据库原理与应用》实验教案13
《数据库原理与应用》
实
验
教
案
院系:
教育科学与技术学院
专业名称:
教育技术学
实验班级:
教技1201
实验者:
张宁
《数据库原理及应用》是计算机科学领域中重要的主干课程,数据库技术是信息系统的核心和基础,它的出现极大地促进了计算机应用向各行各业的渗透。
数据库的建设规模、数据库信息量的大小和使用频度已成为衡量一个国家信息化程度的重要标志。
通过课程的学习,要求学生掌握数据库应用的基本原理、方法和技术,具备一定的实际动手能力。
能够根据实际需要,设计和开发出适用的数据库应用系统。
本实验教程中,选用SqlServer2000数据库管理系统作为实验平台,共设计了9个实验项目。
各个实验项目介绍如下:
实验一:
DBMS的基本操作,主要熟悉SQLServer2000中的服务器管理器、企业管理器和查询分析器环境,学会在企业管理器创建和删除数据库、数据表的方法。
实验二:
使用SQL操作数据库与数据表,要求学习者掌握使用SQL语句创建和删除数据库、数据表的方法,能够使用SQL语句创建各种完整性约束以及修改表的结构。
实验三:
SQL查询语句的使用,主要练习简单表的数据查询、排序和连接查询的操作以及练习子查询、查询嵌套的操作。
实验四:
SQL更新语句的使用,要求学习者掌握数据更新语句的使用;理解基于视图的查询和数据更新操作的过程,掌握视图操作的基本方法和应用。
实验五:
数据库的完整性,要求学习者深入理解数据库完整性的概念,熟悉SQLSERVER的完整性约束技术,了解SQLSERVER的违反完整性处理措施。
实验六:
数据库的安全性,要求学习者掌握SQLSERVER数据访问控制策略和技术。
实验七:
通过嵌入式SQL访问数据库,要求学习者熟悉通过嵌入式SQL(主语言为ASP)编程访问数据库的过程和方法。
实验八:
通过ODBC访问数据库,要求学习者学会配置ODBC数据源的方法,能使用ODBC来进行数据库应用程序的设计。
实验九:
《数据库设计与应用开发》,该项目为提高型实验项目,要求学习者熟悉数据库系统设计的流程;掌握数据库的设计方法。
《数据库原理与应用》实验教案
实验项目
实验一DBMS的基本操作
实验二使用SQL操作数据库与数据表
实验三SQL查询语句的使用
实验四SQL更新语句的使用
实验五数据库的完整性
实验六数据库的安全性
实验七通过嵌入式SQL访问数据库
实验八通过ODBC访问数据库
提高型实验《数据库设计与应用开发》
实验注意事项:
1、实验之前应认真阅读实验讲义及教材有关章节。
2、实验室内禁止抽烟、禁止大声喧哗。
3、严格按照规定操作所有仪器设备,如有损坏或丢失,应及时报告,并根据情况进行赔偿。
4、实验中注意原始数据的记载和保存。
5、注意保持场地清洁,实验完毕,主动协助指导教师清扫整理实验室。
6、实验之后,认真填写实验报告。
实验一DBMS的基本操作
一、实验目的
1、熟悉SQLServer2000中的服务器管理器、企业管理器和查询分析器环境。
2、了解SQLServer2000数据库的逻辑结构和物理结构。
3、了解数据表的结构特点,了解SQLServer的基本数据类型。
4、学会在企业管理器中创建、删除和还原数据库的方法。
5、学会在企业管理器创建和删除数据表的方法。
二、实验器材
多媒体计算机、WindowsXPProfessional版、SQLServer2000开发版
三、实验内容
设有一数据库名为“学生选课管理”,初始大小为10MB,最大为50MB,数据库自动增长,增长方式是按5%比例增长;日志文件初始为2MB,最大可增长到5MB,按1MB增长。
数据库的逻辑文件名为“student_data”,物理文件名为“student_data.mdf,存放路径为“E:
\sql_data”。
日志文件的逻辑文件名为“student_log”,物理文件名为“student_log.ldf”,存放路径为“E:
\sql_data”。
1、使用企业管理器创建上述的数据库。
2、在建立的数据库“XJGL”中,用向导新建5张数据表,分别是:
学生信息表、课程信息表、学生选课成绩表、教师信息表和教师上课课表。
3、给“XJGL”数据库中的各张表输入数据。
4、用企业管理器对数据库文件进行备份和还原。
四、实验原理
数据库管理系统(DatabaseManagementSystem,简称DBMS)是位于用户与操作系统之间的一层数据管理软件。
设计DBMS的目标是为用户提供界面友好、功能完备、数据管理及数据库应用系统开发效率高的一个软件系统。
DBMS主要功能包括:
①数据定义功能:
即提供数据定义语言(DDL)、定义数据库中的数据对象;
②数据操纵功能:
提供数据操纵语言(DML),操纵数据实现对数据库的基本操作(查询、插入、删除和修改);
③数据库的运行管理:
保证数据的安全性、完整性、多用户对数据的并发使用、发生故障后的系统恢复;
④数据库的建立和维护功能(实用程序):
数据库数据批量装载、数据库转储、介质故障恢复、数据库的重组织、性能监视等;
关系数据库中常用的数据库管理系统有:
SQLServer2000、ORACLE以及ACCESS等。
本实验中选用的DBMS主要为SQLServer2000。
(一)SQLServer2000安装过程中的关键问题
1、安装选择
安装选择界面如图1.1所示。
3个单选按钮的含义如下:
●“创建新的SQLServer实例,或安装客户端工具”:
第一次安装SQLServer2000服务器或者客户机;
●“对现有的SQLServer实例进行升级\删除或添加组件”:
对SQLServer7.0升级或者删除已经安装的实例;
●“高级选项”:
自定义安装内容。
图1.1安装选择
图1.2安装定义选择
如果对现有的SQLServer实例进行升级\删除或添加组件”按钮是灰色的,是因为你的服务器没有已经使用的SQLServer实例。
2、安装定义选择
安装选择界面如图1.2所示。
3个单选按钮的含义如下:
●仅客户端工具:
安装SQLServer2000客户机;
●服务器和客户端工具:
安装SQLServer2000服务器和客户机;
●仅连接:
安装SQLServer2000连接组件。
什么是连接?
连接是SQLServer2000客户机中最基本的部分,完整的客户机包括各种管理工具和底层的TBS协议组件,这里的TBS协议组件就是连接。
一般来讲,在终端用户的计算机上安装连接和应用系统。
这样的客户机只能通过应用系统操作数据,无法通过SQLServer2000客户机自身的管理工具来操作数据。
3、实例名选择
实例是虚拟的SQLServer2000服务器。
在同一台物理计算机上可以同时安装运行多个SQLServer系统,多个SQLServer2000实例,每个实例就好比是一个单独的SQLServer2000服务器。
不同的SQLServer系统是用实例名来标识的。
图1.3实例名定义
不同版本的SQLServer服务器可以通过多实例机制运行在同一台计算机上而互不干扰。
前提是各种版本的SQLServer按照自己的端口运行。
SQLServer实例名定义如图1.3所示。
SQLServer实例有两种类型.
●默认实例:
以计算机的NetBIOS名称命名的实例,如计算机的NetBIOS名称为mynetserver,则默认的SQLServer2000数据库默认实例名就是mynetserver。
在一台计算机上只能有一个默认实例。
NetBIOS(网络基本输入\输出系统)是20世纪80年代末期为了利用IBMPC构建局域网而出现的一种MSDOS程序的高级语言接口。
为了利用网络硬件和软件将计算机连接成网络,微软和其他供应商利用NetBIOS接口来设计网络组件和程序。
NetBIOS接口利用最多16个字节的名称来唯一标识网络中的每个资源,这就是我们熟悉的计算机名称。
●命名实例
通过计算机的NetBIOS名称加上实名来进行标识,形式为“计算机名\实例名”,在同一台计算机上最多有16个命名实例。
4、身份验证模式
SQLServer2000提供两种身份验证方式,如图1.4所示。
●Windows身份验证模式:
用户通过Windows用户账号连接时,SQLServer使Windows操作系统中的信息验证用户名和密码。
●
图1.5SQL服务器上的安装结果
图1.4身份验证方式选择
混合模式(Windows身份验证和SQLServer身份验证):
允许用户使用Windows操作系统身份验证或SQLServer身份验证进行连接。
(二)SQL服务器上的安装结果
SQLServer2000服务器安装完毕后,其结果体现为后台的服务系统。
主要包括4个方面的功能。
通过控制面板→管理工具→服务,可以查看SQLServer2000服务器的后台服务功能。
如图1.5所示。
这四个功能分别如下:
1、MSSQLSERVER
MSSQLSERVER服务是SQLServer2000服务器的核心数据库引擎服务。
客户机对SQLServer2000服务器提出的各种要求都会转换为一组Transact-SQL语句,SQLServer服务就是协调和安排这些语句的执行,并向客户机反馈结果。
MSSQLSERVER服务的主要功能包括数据管理、事务处理和查询,以及维护数据的完整性和安全性。
2、SQLSERVERAGENT
SQLSERVERAGENT相当于SQLServer2000的系统自动管理、控制、调度中心,启动代理服务能够使系统按照管理员的意图自动运行并管理数据库系统。
3、MicrosoftSearch
MicrosoftSearch服务是一个全文搜索和查询服务,是可选的,用于建立数据库的全文目录和索引,并支持针对全文的检索。
普通查询是通过索引来快速定位的,索引存储在数据库中。
全文目录和索引不存储在数据库中,而是存储在专门的文件中,主要用于对大容量的文本等数据进行检索。
4、DistributedTransactionCoordinator
DistributedTransactionCoordinator用于完成分布式事务(在物理上不同的两台SQLServer2000服务器上完成的同一个任务)并保证事务的一致性。
图1.6SQL客互机的图形化的管理工具
(三)SQL客户机上的安装结果
SQLServer2000安装完毕后,其SQL客互机为一组图形化的管理工具,如图1.6所示。
1、企业管理器
企业管理器是基于一种新的被称为微软管理控制台(MicrosoftManagementConsole。
简称MMC)的公共服务器管理环境,它是SQLServer中最重要的一个管理工具。
如图1.7所示。
图1.7企业管理器界面
图1.8查询分析器窗口
企业管理器不仅能够配置系统环境和管理SQLServer,而且由于它能够以层叠列表的形式来显示所有的SQLServer对象,因而所有SQLServer对象的建立与管理都可以通过它来完成。
2、查询分析器
查询分析器是SQL命令的编辑、执行的窗口,用户可以输入SQL语句如建立数据表、建立视图、查询、编辑存储过程等。
如图1.8所示。
图1.9服务管理器界面
查询分析器可通过企业管理器界面进入,在SQLServer的控制台根目录下,执行“工具”菜单下的“SQL查询分析器”;也可以在“开始”菜单下进入。
3、服务管理器
服务管理器是SQLServer2000后台网络服务的管理工具,等效于在控制面板/管理工具服务中管理服务,是启动、关闭和停止网络服务的工具,如图1.9所示。
注:
只有安装了服务器端之后才会有服务管理器。
4、客户端网络实用工具
图1.10选择启用的协议图1.11设置服务器的别名
客户端网络实用工具对SQLServer2000客户端的网络参数进行配置,主要配置网络协议,并正确设置协议的相关参数,即配置哪台服务器,哪个端口提供服务,选择启用的协议和设置服务器的别名等,如图1.10和图1.11所示。
5、服务器网络实用工具
服务器网络实用工具对SQLServer2000服务器的网络参数进行配置,主要配置网络协议,并正确设置协议的相关参数。
注:
只有安装了服务器端之后才会有服务器网络实用工具。
6、导入和导出数据(实习二中将介绍)
(四)配置SQLServer2000网络
1、配置共享内存的本地网络环境
大多数初学者的计算机网络环境有限,甚至没有局域网,将SQLServer2000的服务器和客户端安装在同一台计算机上,这样的安装称为本地SQLServer2000网络。
在这样的网络环境中,应该优先使用共享内存的IPC机制。
配置共享内存的本地网络环境步骤如下:
●配置服务器
(1)运行“服务器网络实用工具”,出现如图1.12所示的“常规”选项卡,在“启用的协议”列表框中清除所有的协议即可。
图1.12服务器端网络实用工具
图1.13客户端网络实用工具
提示:
如果服务器上没有启用任何协议,SQLServer2000服务器将启用共享内存机制,但共享内存机制无法处理远程客户机请求.
(2)重新启动SQLServer2000服务器
●配置本地客户机
运行“客户端网络实用工具”,出现如图1.13所示的“常规”选项卡。
在“按顺序启用协议”列表框中清除所有的协议,并选择“启用共享内存协议”复选框。
提示:
配置共享内存的SQLServer2000服务器只需清除所有的网络协议即可;配置共享内存的SQLServer2000客户机必须选择启用共享内存协议选项。
●测试
使用“查询分析器”测试SQLServer2000客户机和服务器的连接,连接成功,表明本地共享内存的SQLServer2000网络配置成功。
2、配置基于TCP/IP协议网络环境
远程客户机通过TCP/IP协议配置和本地客户机配置是完全一样的。
配置基于TCP/IP协议网络环境步骤如下:
●配置服务器
图1.14TCP/IP属性
(1)运行“服务器网络实用工具”,出现如图1.12所示的“常规”选项卡,将TCP/IP协议添加到“启用的协议”列表框中,单击“属性”按钮;
(2)出现如图1.14所示的“TCP/IP”属性界面,在“默认端口”文本框中显示了默认的端口为1433,如果需要更改,可输入(一般应为1024以上的数字),然后重新启动SQLServer2000服务器。
注意:
端口是用来区分同一台计算机上不同的网络服务的。
如同一台计算机上既安装了SQLSERVER2000服务器和WEB服务器。
区分格式为:
IP地址:
端口
按照国际标准化组织的有关规定:
●低于255的端口号用于公共应用;
●255-1023的端口号被分配给各公司,用于销售的应用程序;
●高于1023的端口号可以由用户自行分配使用。
SQLSERVER2000默认分配的端口号为1433。
●配置客户机
(1)启用“客户端网络实用工具”,出现如图1.13所示的”常规”选项卡,将TCP/IP添加到“按顺序启用协议”列表框中;
(2)切换到如图1.15所示的“别名”选项卡,单击“添加”按钮;
图1.15别名选项卡
图1.16添加网络库配置
(3)现如图1.16所示的“添加网络库配置”界面。
在“服务器别名”文本框中输入mysqlserver→选择“网络库”为“TCP/IP”单选钮→在“服务器名称”文本框中输入SQLServer2000服务器的IP地址,如192.168.100.89。
(4)取消“动态决定端口”复选框选择,在“端口号”文本框中核实SQLServer2000服务器的端口;
(5)单击“确定”按钮。
提示:
在局域网环境中,服务器名称文本框中既可以用IP地址,也可以用服务器的NetBIOS名称;在Internet环境中则只能使用IP地址.
●测试
启动“查询分析器”,出现“连接到SQLServer”界面。
在“SQLServer”列表框中选择或者输入新建立的别名进行测试,测试成功则表明TCP\IP的SQLServer2000网络配置成功。
(五)在企业管理器下建立客户机和服务器连接的步骤
企业管理器可以管理多个服务器,为此需要连接和组织服务器。
要连接服务器,就要将服务器注册。
将服务器注册以后,可以将其组织成逻辑组。
1、服务器组
企业管理器组可以组织服务器和命名实例。
首次启动企业管理器时,有一个默认服务器组“SQLServer组”被自动创建。
用户可以创建新的SQLServer组,并逻辑组织服务器。
方法是:
在企业管理器菜单中右键单击SQLServers组,选择新建SQLServer组菜单项。
2、注册服务器
所谓注册服务器是指将网络中的其它SQLServer服务器注册到客户机的企业管理器中,以便于管理。
请按照“注册SQLSERVER服务器”向导一步一步完成。
3、启动服务
将服务器注册成功后,要连接服务器,只需在企业管理器下,单击这个服务器即可。
(六)数据库与数据表的操作
SQLSERVER2000下,无论对数据库还是对数据表操作,既可以通过鼠标操作实现,也可以通过SQL语句实现。
1、建立数据库
使用CREATEDATABASE命令或菜单建立数据库
数据库建立后将得到数据库的数据文件和日志文件,扩展名分别是“.mdf”和“.ldf”,通过查看数据库文件的属性将会得到其存储的物理位置。
2、建立数据表
在已建立的数据库下,采用CREATETABLE命令或菜单操作建立数据表。
注意:
无论是采用CreateTable方法还是使用菜单操作建立数据表,数据表均建立在当前数据库下,数据表的结构定义和数据表的内容均放在当前数据库这个容器下,数据表文件不以单个文件独立存在。
(七)数据库的还原与备份
1、备份数据库
当需要将数据库保存在其它存储介质或其它文件下,应使用数据库备份操作,数据库一旦备份后,连同其中的数据表等信息均被自动备份;对于已经备份的数据库,可使用“还原”操作,使备份的数据库还原在当前服务器组下。
数据库“备份”的方法可直接通过菜单实现。
具体的步骤如下:
图1.17数据库备份中的“常规“选项
图1.18选择数据库备份的目标
(1)右键单击欲“备份”的数据库,在弹出的快捷菜单中选择“所有任务”,执行“数据库备份”功能,弹出如图1.17所示的界面。
(2)在“数据库”列表框中选择要备份的数据库;在“名称”文本框中输入备份后的数据库名称;在“备份”组下选择备份操作类型,共有以下四种选择:
①“数据库-完全”:
完整备份数据库的所有内容。
②“数据库-差异”:
只创建数据库中自上一次数据库备份之后修改过的所有页的副本。
③“事务日志”:
事务日志备份。
④“文件和文件组”:
数据库文件和文件组备份。
在“目的”组中指定备份设备或文件名。
①单击“添加”按钮添加备份设备或文件。
②单击“删除”按钮用来删除备份设备或文件。
③单击“内容”按钮,则可以查看已经存储在备份或文件中的备份信息,如备份集、服务器和数据库名称、备份类型、备份日志、备份数据有效期以及备份数据长度等。
(3)单击“添加”按钮,弹出“选择备份目的”对话框,如图1.18所示。
在“文件名”组中选择备份后的数据库的位置和名称,单击“确定”,返回图1.18。
在“重写”组中选择“重写”方式。
①追加到媒体:
需要保存备份设备或文件中以前的备份数据,则选择“重写”组中的“追加到媒体”
②“重写现有媒体”:
要求本份备份数据覆盖以前的备份数据,从而节省存储空间。
“调度”组用来安排数据库备份操作的执行时间。
SQLSever代理服务可将数据库备份作为一个任务进行安排,使它在将来某个时刻执行一次或指定的时间段内重复执行。
(4)单击确定按钮,系统开始备份指定的数据库。
2、还原数据库
数据库“还原”的方法可直接通过菜单实现。
具体的步骤如下:
右键单击任意数据库名称,在弹出的快捷菜单中,选择“所有任务”→“还原数据库”,如图1.19所示。
图1.19数据库还原窗口
图1.20数据库还原中的“选择还原设备”
在“常规”选项卡中,选择或输入还原后数据库名,在还原位置上选择还原方式,如“从设备”。
①单击“从设备”→“选择设备”确定,出现如1.20所示的界面。
②单击“添加”,出现“选择还原目的”窗口。
③在单选按钮“文件名”选择备份的数据库的位置和名称。
④单击“确定”按钮开始还原。
五、实验步骤
(一)创建服务器组和注册服务器
1、创建服务器组
2、注册服务器
3、建立客户端和服务器的连接
具体要求:
按照上述预备知识,在企业管理器下创建“服务器组”(服务器组名称自定),分别构建基于“共享内存”的本地网络和“TCP/IP”的网络环境,并实现客户端和服务器的有效连接。
(二)数据库基本操作
在“企业管理器”环境下,完成如下任务:
1、创建数据库
建立名为“XJGL”的数据库。
2、建立基本表
在“XJGL”数据库下,建立5张数据表:
学生信息表、课程信息表、学生选课成绩表、教师信息表和教师上课课表。
各个关系表的模式如下:
表2.1student表(学生信息表)
字段名称
类型
宽度
允许空值
主键
说明
sno
char
8
NOTNULL
是
学生学号
sname
char
8
NOTNULL
学生姓名
sex
char
2
NULL
学生性别
native
char
20
NULL
籍贯
birthday
smalldate
4
NULL
学生出生日期
dno
char
6
NULL
学生所在院系
spno
char
8
NULL
专业代码(外键)
classno
char
4
NULL
班级号
entime
smalldate
4
NULL
学生入校时间
home
varchar
40
NULL
学生家庭住址
tel
varchar
40
NULL
学生联系电话
表2.2course表(课程信息表)
字段名称
类型
宽度
允许空值
主键
说明
cno
char
10
NOTNULL
是
课程编号
spno
char
8
NULL
专业代码(外键)
cname
char
20
NOTNULL
课程名称
ctno
tinyint
1
NULL
课程类型编号(外键)
experiment
tinyint
1
NULL
实验时数
lecture
tinyint
1
NULL
授课学时
semester
tinyint
1
NULL
开课学期
credit
tinyint
1
NULL
课程学分
表2.3student_course表(学生选课成绩表)
字段名称
类型
宽度
允许空值
主键
说明
sno
char
8
NOTNULL
是
学生学号
tcid
small