2008-10-24 11:29:02| 分类: sql server | 标签: |举报 |字号大中小 订阅
课程简介
《大型数据库SQL SERVER》课程是一门基于客户端/服务器端大型关系数据库管理系统,本课程主要讲授SQL Server的基本概念,大型数据库管理理念,数据库运行原理和操作,安全性及数据完整性的实现。通过学习本课程,学生能够掌握并灵活运用SQL Server进行数据库的建立和表、视图的建立。学会使用T-SQL语句、基于表、视图数据的查询及各种运算、存储过程的使用、触发器、数据备份与数据导入导出、系统安全性管理等。结合编程语言,做到学以至用。
实验一 SQL SERVER2000环境的熟悉
一、目的与要求
1.掌握SQL SERVER服务器版的使用方法;
2.掌握企业管理器的基本使用方法;
3.掌握查询分析器的基本使用方法;
4.对数据库及其对象有一个基本了解。
二、实验准备
1.了解SQL SERVER2000网络安装的软硬件要求;
2.了解SQL SERVER支持的身份验证模式;
3.SQL SERVER各组件的主要功能;
4.对数据库、表、数据库对象有一个基本了解;
5.了解在查询分析器中执行SQL语句的方法。
三、实验内容
1.以STUDENT身份登录到SQL SERVER服务器;
2.利用企业管理器访问系统自带的PUBS数据库;
1)打开数据库;
2)查看内容;
3)任意插入一条记录。
3.对查询分析器的使用;
1)打开数据库;
2)查看内容;
3)任意插入一条记录。
4.在输入窗口中输入T-SQL语句:
USE PUBS
SELECT *
FROM AUTHORS
GO
5.在AUTHORS表中使用企业管理器任意插入一条记录。
四、思考题
1.掌握C/S模式下的SQL SERVER登录及运行环境;
2.学习使用企业管理器.查询分析器。
实验二 创建数据库和表
一、目的与要求
1.了解SQL SERVER数据库的逻辑结构和物理结构;
2.了解表的结构;
3.了解SQL SERVER的基本数据类型;
4.学会在企业管理器中创建数据库和表;
5.学会使用T-SQL语句创建数据库和表。
二、实验准备
1.明确各种数据库身份;
2.创建数据库必须要确定数据库名.所有者.数据库大小(最初的大小、最大的大小、是否允许增长及增长方式)和存储数据库的文件;
3.确定数据库包含哪些表及所包含表的结构及常用数据类型和创建方法。
三、实验内容
实验2.1 通过企业器、查询分析器创建、删除数据库
l 实验指导
1.在企业管理器中创建数据库student_学号:
l 要求:
1)数据库STUDENT_学号初始大小为10MB,最大大小为50MB,数据库自动增长,增长方式是按5%比例增长;
2)日志文件初始大小为2MB,最大可增长到5MB,按1MB增长;
3)数据库的逻辑文件名和物理文件名均采用默认值;
(分别为STUDENT_学号_data和e: \sql\data\MSSQL\STUDENT_学号.MDF)
4)事务日志的逻辑文件名和物理文件名也采用默认值。
(分别为STUDENT_学号_LOG和e: \sql\data\MSSQL\STUDENT_学号_LOG.ldf)
2.在企业管理器中删除STUDENT_学号数据库;
3.使用T-SQL语句创建数据库STUDENT_学号,要求同1;
4.使用T-SQL语句将数据库的初始大小改为5MB,最大大小改为60MB;
5.使用T-SQL语句增加一文件组FGROUP_学号;
6.使用T-SQL语句增加一名为dtat_学号的数据文件,初始大小为1MB,最大大小为10MB,数据库自动增长,增长方式是按1MB增长;将dtat_学号定义到文件组FGROUP_学号中;
7. 使用T-SQL语句删除文件组FGROUP_学号。
实验2.2 创建、删除表
l 实验指导
1.在企业管理器中分别创建表Employees、Departments和Salary;
l 要求:
1)表命名格式为:姓名拼音缩写+学号后两位+表名。如张三,学号后两位为12,为Employees表命名:ZS12Employees,或ZS12E。
2)Employees表结构包含字段如下:
字段名 | 说明 |
Eid | 员工号 |
Ename | 员工名 |
Birthday | 出生日期 |
Gender | 性别 |
Address | 地址 |
Zip | 邮编 |
Phonenumber | 电话号码 |
E_mail | 电子邮件地址 |
did | 部门号 |
3)Departments表结构包含字段如下:
字段名 | 说明 |
Did | 部门号 |
Dname | 部门名 |
note | 备注 |
4)Salary表结构包含字段如下:
字段名 | 说明 |
Eid | 员工号 |
Income | 收入 |
Outcome | 支出 |
2.在企业管理器删除创建的Employees、Departments和Salary表;
3.使用T-SQL语句创建表Employees、Departments和Salary;
4.使用T-SQL语句将Employees的出生日期修改为smalldatatime;
5. 使用T-SQL语句为Salary表增加一个字段,字段名为SJSR(实际收入),字段类型、长度等自定。
6.使用T-SQL语句为三个表定义主键、外键。
四、思考题
1.日志文件的作用;
2.登录时,使用的是哪种登录方式,为什么。
实验三 表数据插入.修改和删除
一、实验目的
掌握对表数据的各种处理。
二、准备工作
1.预习相关内容;
2.熟悉表数据处理的菜单操作与命令;
三、实验内容
实验3.1 通过企业管理器插入、修改、删除表数据
l 实验指导
1.通过企业管理器将Employees、Departments和Salary添加数据;
l 向Employees添加12条员工记录:
EID | ename | birthday | gender | Address | zip | PhoneNumber | EmailAddress | did |
|
000001 | 王林 | 1956-1-23 | 1 | 中山路32-1-508 | 210003 | 3355668 | NULL | 2 |
|
010008 | 伍容华 | 1966-3-28 | 1 | 北京东路100-2 | 210001 | 3321321 | NULL | 1 |
|
020010 | 王向容 | 1972-12-9 | 1 | 四牌10-10-108 | 210006 | 3792361 | NULL | 1 |
|
020018 | 李丽 | 1950-7-30 | 0 | 中山东路102-2 | 210002 | 3413301 | lili@sina.com | 1 |
|
102201 | 刘明 | 1962-10-18 | 1 | 虎距路100-2 | 210013 | 3606608 | NULL | 5 |
|
102208 | 朱俊 | 1955-9-28 | 1 | 牌楼巷5-3-1806 | 210004 | 4708817 | zhujun@sina.com | 5 |
|
108991 | 钟敏 | 1969-8-10 | 0 | 中山路108-3-105 | 210003 | 3346722 | zhongmin@sohu.com | 3 |
|
111006 | 张石兵 | 1964-10-1 | 1 | 解放路34-9-1-203 | 210010 | 4563418 | zhang@china.com | 5 |
|
210678 | 林涛 | 1967-4-2 | 1 | 中山北路247-2-305 | 210008 | 3467336 | NULL | 3 |
|
302566 | 李玉珉 | 1958-9-20 | 1 | 热和路209-3 | 210018 | 8765991 | Linyumin @jjlonline.com | 4 |
|
308759 | 叶凡 | 1968-11-18 | 1 | 北京西路3-7-502 | 210001 | 3308901 | NULL | 4 |
|
504209 | 陈林琳 | 1959-9-3 | 0 | 汉中路120-4-102 | 210002 | 4468158 | NULL | 4 |
|
l 向Departments添加5条记录:
DID | DName | Note |
1 | 财务部 | NULL |
2 | 人力资源部 | NULL |
3 | 经理办公室 | NULL |
4 | 研发部 | NULL |
5 | 市场路 | NULL |
l 向Salary添加12条记录:
InCome | OutCome | |
000001 | 2100.8 | 123.09 |
010008 | 1582.62 | 88.03 |
102201 | 2569.88 | 185.65 |
111006 | 1987.01 | 79.58 |
504209 | 2066.15 | 108 |
302566 | 2980.7 | 210.2 |
108991 | 3259.98 | 281.52 |
020010 | 2860 | 198 |
020018 | 2347.68 | 180 |
308759 | 2531.98 | 199.08 |
210678 | 2240 | 121 |
102208 | 1980 | 100 |
2.通过企业管理器修改表数据。
实验3.2 通过查询分析器插入、修改、删除表数据
l 实验指导
1. 使用T-SQL语句将表Employees、Departments和Salary各添加一条数据;
2.通过查询分析器将Employees、Departments和Salary修改以下数据:
1)修改三表中的某个记录的字段值(带条件的SET语句);
a) 将000001职工的姓名修改成“王玲“,性别修改为0。
b) 将收入多于3200的职工,支出修改为300。
c) 将所有职工的收入增加100元。
d) 将”经理办公室”部门的职工性别修改为0。
e) 将部门表中前三条数据的备注修改为”编制已满” 。
f) 已知财务部对部分职工工资收入及支出变动如表S1所示:
EID | InCome | OutCome |
000001 | 2400.8 | 155.09 |
010008 | 1666.62 | 155.03 |
102201 | 2666.88 | 188.65 |
020010 | 1999.01 | 188.58 |
020018 | 2666.15 | 222 |
请用S1的数据更新Salary表中相应的数据。
g) 将陈林琳的地址修改为“汉中路_南京路12-1-102”
四、思考题
1.理解数据库与数据表的关系;
2.删除命令的种类及异同点。
实验四 数据库的查询
一、实验目的
熟练掌握T-SQL语句的各种子句及语法结构。
二、准备工作
1.掌握并灵活使用T-SQL及其相关技巧;
2.预习相关内容;
3.了解SELECT语句的基本语法格式;
4.了解SELECT语句的执行方法;
5.了解子查询的表示方法;
6.了解连接查询的表示;
7.了解数据汇总的方法;
8.了解SELECT语句的GROUP BY子句的作用和使用方法;
9.了解SELECT语句的ORDER BY子句的作用和使用方法。
三、实验内容
实验4.1 T-SQL语句的基本语法(一)
l 实验指导
SELECT语句的基本使用:
1.查询Employees表中每个雇员的所有记录;
2.查询Employees表中部门号与性别,要求查询出来的记录不重复;
3.查询Employees表中每个雇员的地址和电话;
4.查询Departments表中前3条记录;
5.查询EmployeeID为000001的雇员的地址和电话;
6.查询E-MAIL地址为空的记录;
7.查询部门号为1号或2号或3号的职工信息。
实验4.2 T-SQL语句的基本语法(二)
l 实验指导
SELECT语句的基本使用:
1.查询Employees表中女雇员的地址和电话,并使用AS子句将结果中各列的标题分别
指定为home address、fixed phone;
2.计算每个雇员的实际收入;
3.找出所有姓王的雇员的部门号。
4.找出所有地址中含有“中山”的雇员的号码及部门号;
5.找出地址中含有“路_路”的雇员号及姓名。
6.找出所有收入在2000-3000元之间的雇员编号;
7.找出所有在财务部和人力资源部工作的雇员的编号;
8.查询Employees表雇员编号、姓名、性别。要求:当性别为1时,将性别显示为男,当性别为0时,将性别显示为女。
实验4.3 数据库的查询(一)
l 实验指导
1.子查询的使用
1)用子查询的方法查找在财务部工作的雇员的情况;
2)用子查询的方法查找所有收入在2500元以下的雇员的情况;
3)用子查询的方法查找财务部年龄不低于研发部雇员年龄的雇员的姓名;
4)用子查询的方法查找研发部比所有财务部雇员收入都高的雇员的姓名;
5)用子查询的方法查找比所有财务部的雇员收入都高的雇员的姓名;
实验4.4 数据库的查询(二)
l 实验指导
1.连接查询的使用
1)查询每个雇员的情况及其薪水的情况;
2)查询每个雇员的情况及其工作部门的情况;
3)查找财务部收入在2200元以上的雇员姓名及其薪水详情;
4)查询研发部在1966年以前出生的雇员姓名及其薪水详情。
实验4.5 数据库的查询
l 实验指导
1.数据汇总
1)求财务部雇员的平均收入;
2)查询财务部雇员的最高和最低收入;
3)求财务部雇员的平均实际收入;
4)查询财务部雇员的最高和最低实际收入;
5)求财务部雇员的总人数;
6)统计财务部收入在2500以上雇员的人数。
2.GROUP BY、ORDER BY子句的使用
1)求各部门的雇员数;
2)统计各部门收入在2000元以上雇员人数、部门名称;
3)将各雇员的情况按收入由低到高排列;
4)将各雇员的情况按出生时间先后排列。
5)查询部门号、部门名称及部门人数。
四、思考题
1.最简的T-SQL语句结构是什么;
2.表连接的方式有哪些,哪种方法最简单;
3.表达式有几种,支持的运算有哪些;
4.T-SQL用到的关键字有哪些,分别有什么作用。
实验五 T-SQL编程
一、目的与要求
1.综合.巩固前几个实验所学的内容;
2.掌握用户自定义类型的使用;
3.掌握变量的分类及其使用;
4.掌握各种运算符的使用;
5.掌握各种控制语句的使用;
6.掌握系统函数及用户自定义函数的使用。
二、实验准备
1.了解T-SQL支持的各种基本数据类型;
2.了解自定义数据类型使用的一般步骤;
3.了解T-SQL各种运算符.控制语句的功能及使用方法;
4.了解系统函数的调用方法;
5.了解用户自定义函数使用的一般步骤。
三、实验内容
实验5.1 自定义数据类型与自定义函数的实现
l 实验指导
1.自定义数据类型的使用
1)通过企业管理器,在STUDENT_学号数据库上自定义一个数据类型ID_type,用于描述员工编号;
2)重新创建STUDENT_学号数据库的Employees表,用T-SQL实现:在系统表中查看Employees表是否存在,若存在,删除该表,然后重新建立该表,并使用T-SQL定义一自定义数据类型ID_type。
2.自定义函数的使用
1)定义一函数实现如下功能:对于一给定的DepartmentID之值,查询该值在Departments表中是否存在,若存在返回0,否则返回-1;
2)写一段T-SQL脚本程序调用上述函数,当向Employees表插入一记录时,首先调用函数CHECK_ID,检索该记录的DepartmentID值在表Departments的DepartmentID字段中是否存在对应值,若存在,则将该记录插入Employees表。
实验5.2 使用T-SQL编写程序
l 实验指导
1.自定义一个数据类型,用于描述STUDENT_学号数据库中的DepartmentID字段,然后编写代码重新定义数据库的各表。
2.当对Departments表中的DepartmentID字段值修改时,对Employees表中对应的DepartmentID字段值也进行相应修改;
3.对Employees表进行修改时,不允许对DepartmentID字段值进行修改。
四、思考题
1.理解自定义类型与函数的作用与优点;
2.掌握使用T-SQL基本编程方法与技巧。
实验六 索引、存储过程和触发器的使用
一、目的与要求
1.掌握索引的使用方法;
2.掌握存储过程的使用方法;
3.掌握触发器的使用方法。
二、实验准备
1.了解索引的作用与分类;
2.掌握索引的创建方法;
3.理解数据完整性的概念及分类;
4.了解各种数据完整性的实现方法;
5.了解存储过程的使用方法;
6.了解触发器的使用方法;
7.了解inserted逻辑表和deleted逻辑表的使用。
三、实验内容
实验6.1 索引、触发器
l 实验指导
1.建立索引
对STUDENT_学号数据库的Employees表中的DepartmentID列建立索引。
2.创建触发器
1)向Employees表插入或修改一记录时,通过触发器检查记录的DepartmentID值在Departments表中是否存在,若不存在,则取消插入或修改操作;
2)修改Departments表的DepartmentID字段值时,该字段在Employees表中的对应值也做相应修改;
3)删除Departments表中一记录的同时删除该记录DepartmentID字段值在Employees表中对应的记录。
实验6.2 存储过程
l 实验指导
1.创建存储过程
1)添加职员记录的存储过程EmployeeAdd;
2)修改职员记录的存储过程EmployeeUpdate;
3)删除职员记录的存储过程EmployeeDelete。
2.调用3中的三个存储过程
实验6.3 使用T-SQL编程
l 实验指导
1.自定义一数据类型,用于描述STUDENT_学号数据库中的DepartmentID字段,然后编写代码,重新定义数据库各表;
2.对于STUDENT_学号数据库,表Employees的EmployeeID列与表Salary的EmployeeID列应满足参照完整性规则,请用触发器实现两个表间的参照完整性;
3.编写对数据库STUDENT_学号各表进行插入修改.删除操作的存储过程,然后编写
一段程序调用这些存储过程。
四、思考题
1.触发器的作用及使用到的系统库与系统变量有哪些;
2.带参数与不带参数的存储过程在调用时的异同点。
实验七 客户端/SQL SERVER2000开发与编程
一、目的与要求
1.综合掌握在SQL SERVER中创建数据库.表.角度发器.存储过程的方法;
2.掌握在VB/PB/ASP中通过数据视图窗口查看数据库对象及创建触发器的存储过程的
方法;
3.掌握通过代码建立数据库连接及访问表记录的方法;
4.掌握VB/PB/ASP中调用存储过程对表数据进行操作的方法。
二、实验准备
1.综合以前所学知识,结合某种编程语言开发完整的系统;
2.预习数据库与编程语言链接的相关内容;
三、实验内容
1.开发一个系统,后台数据库为SQL SERVER 2000,前台可为VB/PB/ASP,实现一个完
整功能
1)人事管理系统;
2)图书管理系统;
3)学生(成绩)管理系统;
4)XX进销存管理系统。
2. 基本操作步骤
1)在SQL SERVER2000中建立数据库与数据表;
2)在VB/PB/ASP中查看数据库对象;
3)设计窗体界面;
4)设计应用程序代码;
5)将程序与数据库连接。
四、思考题
1.ODBC的作用及使用方法;
2.编程语言与数据库连接的方法有哪些。
评论