《数据库语言程序设计》 实验指导
实验一、创建和修改数据库
【实验目的】
1.通过本章实验,深刻理解数据库的概念。
2.掌握用管理平台方法建立、查看、修改、删除数据库的基本操作。 3.掌握用T-SQL语句方法建立、查看、修改、删除数据库的基本操作。
【实验内容及步骤】
【项目1】用管理平台完成以下任务:
创建数据库、增加文件组、增加数据文件。 修改数据库、删除数据文件、删除文件组。
1.创建ZYGL(职员管理)数据库,要求数据文件的初始大小为1MB,最大大小为50MB,增长方式按10%增长;日志文件的初始大小为3MB,按1MB增长。 2.修改ZYGL数据库的主数据文件,将增长方式修改为按5MB增长。 3.修改ZYGL数据库,为ZYGL增加一个数据文件ZYGLBAK。 4.增加文件组secfg、并在其中增加数据文件ZYGLDATA1。 5.删除文件组及其文件组中包含的数据文件。 6.删除ZYGL数据库。
简略归纳写出步骤
【项目2】用T-SQL语言完成以下任务:
1.创建ZYGL(职员管理)数据库,要求数据文件的初始大小为1MB,最大大小为50MB,增长方式按10%增长;日志文件的初始大小为3MB,按1MB增长。 写出T-SQL语句
2.修改ZYGL数据库的主数据文件,将增长方式修改为按5MB增长。
3.修改ZYGL数据库,为ZYGL增加一个数据文件ZYGLBAK。
4.增加文件组secfg、并在其中增加数据文件ZYGLDATA1。
5.删除文件组及其文件组中包含的数据文件。
6.删除ZYGL数据库。
【实验总结】
通过了本章的上机实验,学员应该能够掌握用管理平台和T-SQL语句两种方法,进行
数据库的创建、查看、修改及删除。
实验二、创建和修改数据表
【实验目的】
1.掌握用管理平台方法建立、查看、修改、删除数据表的基本操作。 2.掌握用T-SQL语句方法建立、查看、修改、删除数据库的基本操作。
3.通过本章实验,深刻理解数据表的概念,掌握选择使用数据类型、完整性约束的方法。 【实验内容及步骤】
1 创建职员管理数据库ZYGL。
2 在职员管理数据库ZYGL中创建表6.8~6.10的三张数据表:职员表、部门表、工资表。
表6.8 列名 员工号 姓名 性别 出生日期 手机号码 工龄 部门号 备注 数据类型 定长字符型char(3) 定长字符型char(8) 定长字符型char(2) 日期型smalldatetime 定长字符型char(11) 微整型tinyint 定长字符型char(2) 文本型text 职员表结构
是否允许空值 × × × √ √ √ √ √ 说明 主键 要检查是否为“男”或“女” 应在0~35的范围内 要参照部门表的部门号
表6.9 列名 部门号 部门名 电话 数据类型 定长字符型char(2) 定长字符型char(10) 定长字符型char(4) 部门表结构
是否允许空值 × × √ 说明 主键
表6.10 列名 员工号 基本工资 津贴 三金扣款 应发工资 实发工资 数据类型 定长字符型char(3) 小数数据类型decimal(7,2) 小数数据类型decimal(5,2) 小数数据类型decimal(6,2) 小数数据类型decimal(7,2) 小数数据类型decimal(7,2) 工资表结构
是否允许空值 × √ √ √ √ √ 说明 要参照职员表的员工号 为基本工资+津贴 为基本工资+津贴-三金扣款
1. 对各表输入以下数据。(如表6.11~表6.13所示)
表6.11
职员表数据
员工号 001 002 003 004 005 006 007 008 表6.12
姓名 刘裕 张建英 余贺 李方梯 王紫 岳亮 袁弦 黎冰清 性别 男 女 男 男 女 男 女 女 出生日期 1970-9-8 1976-8-4 1975-6-9 1965-7-5 1983-5-28 1968-6-1 1985-9-3 1980-12-5 手机号码 13971234567 13887654321 13882134567 13992365488 15903698528 15991485216 13871524783 13885643218 工龄 12 10 11 30 5 25 3 8 部门号 01 01 02 01 01 02 01 02 备注 爱好书法 厨艺高超
部门号 01 02 部门名 销售科 采购科
电话 8004 8006 表6.13 员工号 001 002 003 004 005 006 007 008 基本工资 1660 1560 1680 1730 1450 1850 1420 1520 津贴 500 380 610 680 430 710 310 380 工资表数据
三金扣款 268.8 300.5 330.7 380.8 258.3 480.3 269.5 263.8
应发工资 2160 1940 2290 2410 1880 2560 1730 1900 实发工资 1891.2 1639.5 1959.3 2029.2 1621.7 2079.7 1460.5 1636.2 --创建数据库ZYCL create database ZYGL go
--使用数据库ZYGL use zygl go
--创建数据表 --1.部门表 create table 部门表
(
部门号 char(2) primary key, 部门名 char(10) not null unique, 电话 char(4) ); go
--2.职员表
create table 职员表
(
员工号 char(3) primary key, 姓名 char(8) not null, 性别 char(2),
部门号 char(2) references 部门表(部门号), 出生日期 smalldatetime ,
手机号码 char(11),
工龄 tinyint constraint ck_gl check(工龄>=0 and 工龄<=35), 备注 text ); go
--3.工资表
create table 工资表
(
员工号 char(3) null references 职员表(员工号), 基本工资 decimal(7,2) , 津贴 decimal(5,2), 三金扣款 decimal(7,2),
应发工资 as 基本工资+津贴,
实发工资 as 基本工资+津贴-三金扣款 ) go
--4.工资发放表
create table 工资发放表
(发放编号 int identity(200701,2) , 发放年月 smalldatetime,
员工号 char(3) null references 职员表(员工号),
实发工资 decimal(7,2) --以后可以用函数调用dbo.fn(员工号) )
Go
【实验总结】
实验三、查询数据表
【实验目的】
1.掌握数据库单表查询、多表查询的方法。
2.掌握T-SQL的查询语句的各种子句的使用方法。
3.通过本章实验,深刻理解数据表的连接概念,掌握连接查询、各种子查询的使用方法。
【实验内容及步骤】
在职员管理数据库ZYGL中完成以下操作: 1. 查询每个雇员的所有数据。
USE ZYGL SELECT * FROM 职员表 GO USE ZYGL
SELECT 姓名,手机号码,工龄 FROM 职员表 GO
2. 查询每个雇员的姓名,手机号码和工龄。
3. 查询员工号为001的雇员的手机号码和工龄。 USE ZYGL
SELECT 手机号码,工龄 FROM 职员表 WHERE 职员表=' 001 ' GO
4. 查询职员表中女雇员的手机号码和出生日期。使用AS子句将结果中各列的标题分别指定为phoneNo和birth_date。
USE ZYGL
SELECT 手机号码 AS phoneNo,出生日期 AS birth_date FROM 职员表 WHERE 性别='女' GO USE ZYGL
SELECT姓名, 出生日期 FROM 职员表
WHERE 姓名 LIKE '王%' GO USE ZYGL
SELECT姓名, 手机号码 FROM 职员表
WHERE 手机号码 LIKE ‘[^4] [^4] [^4] [^4] [^4] [^4] [^4] [^4] [^4] [^4] [^4]’
或:
SELECT姓名, 手机号码 FROM 职员表
WHERE 手机号码 not LIKE ‘%4%’
5. 找出所有姓“王”的职员的姓名和出生日期。
6. 查询手机号码中不含字眼‘4’的职员的姓名。
7. 找出所有收入在2 000~3 000元之间的雇员号。
USE ZYGL
SELECT 员工号,实发工资
搜索“diyifanwen.net”或“第一范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,第一范文网,提供最新经管营销数据库语言程序设计--实验指导 全文阅读和word下载服务。
相关推荐: