数据库实验指导书信息安全专业王爽2009一.概述1.SQL Server 2000 组成SQL Server是可缩放的高性能基于SQL和客户/服务器体系结构的关系数据库管理系统服务器软件包,是由Microsoft 公司推出的SQL Server 数据库管理系统的最新版本。
从图1 SQL Server 的体系结构示意图中看出,SQL Server 2000由4部分组成,在实验中,我们要求掌握基于SQL Server 2000的服务器的使用,也就是数据库管理员DBA的主要操作。
(注:本文所有内容均在SQLServer 2000上实现,读者也可在SQL Server 2005 上得到类似结果。
)图1 SQL Server 的体系结构示意图2. SQL Server 2000 的安装SQL Server 2000 的常见版本有:企业版、标准版、个人版、开发人员版等。
对软硬件的最低需求为:CPU Pentium 166MHz,内存64MB,硬盘180 MB。
SQL Server 2000企业版和标准版只能在windows2000 Server 版和Professional 版操作系统下运行。
下面介绍SQL Server 2000企业版在本地机上的安装过程。
1)插入SQL Server 2000 光盘,自动安装程序启动,屏幕上出现如图2所示画面,按图2 所示选择SQL Server 2000 组件;2) 选择安装数据库服务器,如图3所示,进入SQL Server2000 企业版安装向导;3)在安装向导对话框中点击下一步,进入计算机名对话框;4)选择本地安装,点击下一步,进入安装选择对话框;5)选择创建新的SQL Server 实例,点击下一步,进入用户信息对话框;6)输入用户信息,点击下一步,进入安装定义对话框;7)选择服务器和客户端工具,点击下一步,进入实例名对话框;8)输入实例名,点击下一步,进入安装类型选择对话框;9)选择典型安装,进入服务帐号设置对话框,如图4所示;10)选择对每一个用户使用同一个帐号,自动启动服务器,点击下一步,进入选择身份验证模式选择对话框,如图5所示;11)选择Windows 身份验证模式。
点击下一步,进入开始复制文件对话框,点击下一步,进入选择许可模式对话框,选择处理器许可证,点击继续,开始复制文件。
12)文件复制完毕后,进入安装完毕对话框,点击完成。
系统安装完毕。
图4 选择服务帐号对话框图5 身份验证模式对话框3.SQL Server 2000 的工具1)服务管理器(Server Manager)在进行任何数据库操作前,都必须启动服务器,Server Manager 可以方便启动、停止、暂停本地或远程服务器。
图6是打开的Server Manager窗口。
适当配置窗口中的选项,点击“启动”按钮即可启动SQL Server服务器。
SQL Server 2000安装以后,每次开机时,Windows 都会自动启动服务管理器。
在任务栏上有一个图标表示服务管理器的状态。
如图7所示。
图6 Server Manager 窗口图7 服务管理器在任务栏中的状态2)SQL Server 2000 企业管理器(Enterprise Mamager)企业管理器的启动进入SQL Server2000的企业管理器从Program -> SQL Server -> EnterpriseManager, 图8为企业管理器界面。
企业管理器是DBA管理数据库的重要工具,使用Enterprise Manager可以管理用户账号、登录服务器、备份和恢复数据库、启动和停止SQL Server、创建和管理数据库对象和任务、处理访问控制列表、检查数据库的一致性等。
其中数据库Master、Model、Msdb、Tempdb 是系统数据库。
Pubs、Northwind 是SQL Server 自带的样本数据库,其中有大量的Test 数据,可以作为SQL 语言实验的基础数据。
图8 企业管理器数据库文件夹数据库文件夹中显示SQL Server服务器管理的所有数据库信息。
例如SQL Server 提供的样本数据库Pubs 的展开如图9 所示。
每个数据库均由这些项目来分别描述数据库的属性。
其中关系图为SQL Server 根据用户对数据库的定义,自动绘制的数据库关系示意图(E-R图)。
图10为Pubs的关系图,表示出基本表之间的引用关系,参照完整性定义的图示化表示。
图9 企业管理器中的数据库对象图10 Pubs 的关系图表为数据库中包含的表的信息。
表分为两类,一类为用户创建的表,另一类为系统创建的表。
用户表由用户使用DDL 语言创建,系统表存放DBMS 对用户数据库的管理信息。
其它对象包含了与当前数据库有关的信息。
3)SQL Server 2000 查询分析器(Query Analyzer)查询分析器是一个重要工具,实验中的所有SQL 语言命令均需在查询分析器中输入、编辑运行。
从Program -> SQL Server -> QueryAnalyzer 可以打开查询分析器,如图11 所示。
它是一个多文档程序,在其上可以同时打开多个查询程序(窗口),在查询分析器的工具栏中的绿色按钮为执行当前窗口中SQL 语句按钮。
点击它即可逐行执行。
图11 查询分析器实验一企业管理器下数据库和表的创建一、实验目的1.了解SQL Server数据库的逻辑结构和物理结构;2.了解表的结构特点;3.了解SQL Server的基本数据类型以及空值的概念;二、实验环境(列出软硬件要求及其登陆网站)SQL Server 2000三、实验内容1.在企业管理器下创建一个教学管理数据库Teach,查看其属性2.在教学管理数据库中创建以下五个表:学生(学号,姓名,性别,年龄,系别)课程(课程号,课程名,课时)学生选课(学号,课程号,成绩)教师(教师号,姓名,性别,年龄,职称,工资,岗位津贴,系别)授课(教师号,课程号)四、实验指导1.打开企业管理器,在本地的SQL Server组中的数据库项右键,选新建数据库,填写相关信息:图1-12.查看数据库属性和修改参数窗口——点击Teach数据库右键图1-23.创建基本表,点击Teach数据库下表对象右键,选择新建表,如图1-3所示。
图1-3在表设计器(如图1-4)中输入学生表的各列及其数据类型,完毕后保存为“S”表。
图1-4 4.以同样的方法创建其余四个表5. 向表中输入数据实验二数据的完整性控制一、实验目的1.理解完整性的含义及其作用2.掌握如何在企业管理器下对表进行完整性约束控制二、实验环境(列出软硬件要求及其登陆网站)SQL server 2000三、实验内容1.对Teach数据库中的各表建立主码2.如果有外码的表创建外码3.定义学生年龄在15-50之间,性别只能是“男”或“女”四、实验指导1.建立主码(1)给学生表S建立主码。
打开S表的设计器,选中Sno,点击右键—〉设置主键。
图2-1(2)打开S表,则发现向其中输入数据时,在Sno列不能输入相同的数据,也不能去空值。
(3)用同样的方法设置其他四个表的主码.2. 设定外码(1)给sc表设定外码。
打开S表的设计器,点击右键—〉关系,如图2-2。
(2)选择关系后会弹出关系属性对话框,如图2-3图2-3(3)点击“新建”按钮,并在其中输入相应的外码所对应的主键表,然后“关闭”,即可创建好外码.(4)采用同样的方法给TC表设定外码3. 设定自定义完整性(1)打开”S”表设计器,点击右键—〉约束,在弹出的窗口中,点击“新建”按钮,并在“约束表达式”文本框中输入条件“age>15 and age<50 ”如图2-4所示,然后点击确定。
图2-4(2)以同样的方式再在“S”比扫上创建一个约束,约束条件是sex=’男’ or sex=’女’。
五、实验思考题1.码和外码有什么作用?2.在教学管理器中如何设定学生选修成绩在0-100之间?实验三利用SQL语言创建及修改数据库和表一、实验目的掌握通过sql语言实现数据库的定义、数据表的定义以及完整性的定义二、实验环境(列出软硬件要求及其登陆网站)SQL server 2000三、实验内容使用sql语言完成下列数据定义功能:1.在Teach中创建实验一中的五个表,创建表的同时设置好各个表的主码和外码,并定义学生得成绩在0-100间,学生姓名不能为空。
2.将学生表中姓名列的长度修改为CHAR(10)四、实验指导1. 创建数据表打开查询分析器输入创建学生表的语句CREATE TABLE S(SNo CHAR(6),SN CHAR(8),Sex CHAR(2),Age INT,Dept CHAR(20),primary key(sno))点击运行,查看结果,如图3-3所示图3-3(3) 以同样的方法创建其他四个表。
3. 用alter语句修改学生表的姓名列的长度为10。
Alter table SAlter column sn char(10)五、实验思考题通过SQL语言能否删除表中的一列?实验四单表数据查询一、实验目的1.掌握select ,from ,where 关键字的用法2.掌握top, distinct, as, like, order by关键字的用法二、实验环境(列出软硬件要求及其登陆网站)SQL server 2000三、实验内容1.查询全体学生的学号和姓名2.查询全体学生的详细记录3.查询所有选修过课程的学生学号4.查询考试不及格的学生学号5.查询不是信息系(IS)、计算机系(CS)的学生性别、年龄、系别6.查询选修了c4号课的学生学号和成绩,结果按成绩降序排列7.查询计算机系的学生姓名、年龄、系别8.查询年龄18-20岁的学生学号、姓名、系别、年龄9.查询姓刘的学生情况10.查询学生的姓名和出生年份11.查询没有成绩的学生学号和课程号12.查询总成绩大于200分的学生学号13.查询教师信息中最大的年龄和最小的年龄14.统计信息系的学生个数15.统计计算机系有多少个教师16.统计各系有多少名教师17.统计各位教师代几门课程18.统计计算机系男女生分别有多少人19.查询每个课程号和相应的选课人数20.统计每个学生选修的课程数,以及平均成绩,查询结果按照降序排列四、实验思考题如何通过近似匹配对表进行查询?。