SQL 程序设计实验指导书ATA.docx
- 文档编号:14052687
- 上传时间:2023-06-20
- 格式:DOCX
- 页数:13
- 大小:19.92KB
SQL 程序设计实验指导书ATA.docx
《SQL 程序设计实验指导书ATA.docx》由会员分享,可在线阅读,更多相关《SQL 程序设计实验指导书ATA.docx(13页珍藏版)》请在冰点文库上搜索。
SQL程序设计实验指导书ATA
SQLServer程序设计
实验指导书
适用于软件技术专业
梁爽编著
沈阳理工大学高等职业技术学院
实验一创建数据库
实验目的
1、了解SQLSERVER数据库的逻辑结构和物理结构;
2、掌握SQLSERVER数据库的文件组成;
3、掌握SQLSERVER数据库中文件组的概念;
实验内容
1、在企业管理器中创建数据库;
2、在查询分析器中创建最简单的数据库;
3、在查询分析器中创建较复杂的数据库,要指定数据库文件和日志的名称、大小、最大限制和文件增长速度;
4、在查询分析器中创建指定文件组的数据库;
5、为数据库改名;
6、向数据库中填加、删除一个数据文件;
7、向数据库中填加、删除一个日志文件;
8、修改数据库文件的属性:
大小,最大限制,增长;
9、修改日志文件的属性:
大小,最大限制,增长;
10、删除数据库;
实验二创建数据库表
实验目的
1、了解表的结构和特点;
2、了解SQLSERVER的基本数据类型;
3、熟悉使用SQL语句建立和删除表及索引;
4、学会在企业管理器中创建数据库和表;
实验内容
1、建立数据库bookborrow;
2、在查询分析器中建立表borrow_book,表book,表users;其结构分别为:
表6-1book(书籍)表结构
字段名
字段类型
字段宽度
说明
Bookid
Char
8
书编号(主键)
Bname
Char
20
书名(非空)
Price
Float
10
价格
Amount
Char
2
数量
表6-2users(用户)表结构
字段名
字段类型
字段宽度
说明
Userid
Char
8
用户编号(主键)
Uname
Char
8
用户姓名(非空)
Usex
Char
2
性别
Uage
Int
2
年龄
Introducer
Char
8
介绍人
Ujob
Char
20
工作单位地点
表6-3borrow_book(借阅情况)表结构
字段名
字段类型
字段宽度
说明
Bookid
Char
8
书编号(主键)
Userid
Char
8
用户编号(主键)
Borrowtime
Date
8
借书时间
Giveback_time
Date
8
还书时间
3、在查询分析器中添加、修改、删除列;
4、在查询分析器中删除上述3个表;
5、在企业管理器中重新建立上述3个表,并向表中插入数据;
6、分别建立book和borrow_book以及users和borrow_book之间的主外键关系;
7、删除users表中的主键,并在该列上创建唯一索引;
8、多插入一些数据,根据索引查询数据,看看建立和没建立索引前后查询数据有什么差别;
9、删除users表上的唯一索引;
实验三单表查询
实验目的
1、进一步熟悉SQLSERVER的使用
2、初步学习使用动词select;
3、熟练掌握单表查询的基本方法
4、掌握查询中各种字符匹配的方法;
实验内容
有如下数据表:
职工号
姓名
缺勤时间
缺勤天数
缺勤类型
请假人
001
李华
2007-02-03
3
1
001
002
张敏
2007-02-12
2
2
003
003
付丽
2007-03-03
5
3
004
张晓华
2007-03-10
2
1
001
005
邓刚
2007-03-16
1
2
005
请实现以下查询:
1、列出所有员工的信息;
2、列出员工的姓名、缺勤天数、缺勤类型;
3、列出缺勤天数少于3天的员工姓名和缺勤天数;
4、列出缺勤天数少于3天或缺勤类型为1的员工的姓名;
5、列出缺勤天数少于3天且缺勤类型为1的员工的姓名;
6、列出缺勤类型不为1的员工的姓名;
7、列出缺勤天数为2、3、5的员工的信息;
8、列出缺勤天数为2~5的员工的信息;
9、列出姓张的员工的姓名及其缺勤天数;
10、列出所有员工的缺席天数减少一天后的员工的编号、姓名、缺席天数及缺席类型;
实验四分组查询
实验目的
1、掌握高级查询的方法;
2、掌握查询中各种集合函数的使用方法;
实验内容
一、有如下表结构:
字段名
字段类型
字段宽度
说明
Productid
Int
4
产品编号
Ordered
Int
4
订单编号
quantity
int
4
数量
有如下表数据:
Productid
Ordered
quantity
1
1
5
1
2
10
2
1
10
2
2
25
3
1
15
3
2
30
1、统计每种商品的销售总量
2、统计销售数量大于30的每种商品的销售数量
二、聚合函数的使用
聚合函数
描述
AVG
计算表达式中平均值
COUNT
表达式中值的数目
COUNT(*)
所选择的行的数目
MAX
表达式中的最大值
MIN
表达式中最小值
SUM
计算表达式中所有值的和
使用系统提供的pubs数据库:
1、统计titles表中书的平均价格;
2、查询作者表中有多少个不同的城市;
3、查询Titles表中的行数;
4、查询Titles表中单价最高的书;
5、查询Titles表中单价低的书;
6、查询Titles表中所销售的所有数量之和;
实验五连接查询
实验目的
1、进一步熟悉SQLSERVER2005的使用;
2、进一步学习使用动词select;
3、进一步熟悉单表查询的基本方法;
4、熟练掌握等值连接与非等值连接以及自身连接的查询方法;
5、熟练掌握子查询的使用方法;
实验内容
下表所示为实验表数据:
表9-1JBQK(基本情况)
职工号
姓名
缺勤时间
缺勤天数
缺勤类型
请假人
001
李华
2007-02-03
3
1
001
002
张敏
2007-02-12
2
2
003
003
付丽
2007-03-03
5
3
004
张晓华
2007-03-10
2
1
001
005
邓刚
2007-03-16
1
2
005
表9-2QQLX(缺勤类型)
缺勤类型
缺勤名称
缺勤描述
1
迟到
本人必须提前一天申请,1-2天由部门准许,2天以上由经理批准
2
病假
1-2天由部门准许,2天以上由经理批准
3
旷工
无故不到者按旷工处理
4
迟到
在规定上班时间1小时以后到岗
1、列出表JBQK及表QQLX中的全部信息;
2、列出缺勤名称为事假的员工的姓名及缺勤天数;
3、列出缺勤名称为事假且缺勤两天的员工的姓名及缺勤天数
4、列出请假人也有缺勤的员工的姓名;
5、列出缺勤类型及每种类型中缺勤员工的信息,若没有该类型的缺勤员工则只列出该种缺勤类型;
6、列出缺勤名称为“事假”的员工的姓名;
7、列出请假人为李华的员工的姓名;
8、列出缺勤名称为事假且缺勤两天的员工的姓名及缺勤天数;
9、列出缺勤天数最多的员工的姓名;
10、列出缺勤类型为1的员工中缺勤天数最多的员工的姓名;
实验六视图的使用
实验目的
1、进一步掌握等值连接与非等值连接以及自身连接的查询方法;
2、熟悉掌握简单子查询和多层嵌套查询的使用方法;
3、使用集合查询的基本方法;
4、掌握数据插入、删除、修改等一系列语句的方法;
5、学习视图定义的方法;
6、学习对视图的查询删除更新的基本方法;
实验内容
下表所示为实验表数据:
表10-1JBQK(基本情况)
职工号
姓名
缺勤时间
缺勤天数
缺勤类型
请假人
001
李华
2007-02-03
3
1
001
002
张敏
2007-02-12
2
2
003
003
付丽
2007-03-03
5
3
004
张晓华
2007-03-10
2
1
001
005
邓刚
2007-03-16
1
2
005
表10-2QQLX(缺勤类型)
缺勤类型
缺勤名称
缺勤描述
1
迟到
本人必须提前一天申请,1-2天由部门准许,2天以上由经理批准
2
病假
1-2天由部门准许,2天以上由经理批准
3
旷工
无故不到者按旷工处理
4
迟到
在规定上班时间1小时以后到岗
1、建立缺勤天数为2天的员工的视图;
2、建立缺勤天数为2天的员工的视图,并要求进行修改和插入操作时仍需保证该视图中员工的缺勤天数仍为2天;
3、建立缺勤天数为2天且缺勤类型为1的员工的视图;
4、将所有员工缺勤天数的总和定义为一个视图;
5、删除4中建立的视图;
6、将1中建立的视图中的职员号为002的员工的缺勤类型改为3;
实验七存储过程的使用
实验目的
1、掌握高级查询的使用方法;
2、学习存储过程定义的方法;
3、熟练掌握不带参数的存储过程的使用;
4、学会使用带参数的存储过程的使用;
5、使用存储过程更新和输出数据;
实验内容
下表所示为实验表数据:
表11-1products(产品)
Pid
Pname
price
1
Mobile
2000
2
Computer
5000
3
TV
1680
4
Washer
1000
5
Sofa
800
6
Pager
1200
7
Table
300
8
Faxphone
4000
9
wine
600
1、使用SELECT语句查询最高价格的产品;
2、创建存储过程,列出贵重商品(价格大于2000),并计算出总价格;
3、创建存储过程,向表中插入数据;
4、创建存储过程,返回数据表中的数据;
实验八触发器的使用
实验目的
1、掌握高级查询的使用方法;
2、学习触发器定义的方法;
3、分别练习使用插入、修改、删除触发器;
实验内容
创建数据表products如下:
字段名
字段类型
字段宽度
说明
Productid
Int
4
产品编号
Ordered
Int
4
订单编号
quantity
int
4
数量
1、新建一个触发器,只要向该表中插入数据,就调用系统扩展存储过程master..xp_cmdshell,输出“成功录入”信息;
2、创建一个插入、更新类型的触发器,只要表中的数据有改变,就用select语句显示查询结果;
3、创建一个删除类型的触发器建立一个与products表结构一样的表p1,当删除表products中的记录时,自动将删除掉的记录存放到p1表中。
实验九综合实验
实验目的
1、掌握SQL语言在开发工具中的使用;
2、通过完成从用户需求分析、数据库设计到上机编程、调试和应用等全过程,进一步掌握查询修改等SQL基本语法的相关内容
实验内容
(1)人事管理系统
功能要求:
人事管理系统应能实现用户的多级管理,并包含数据录入、数据校验、数据修改、数据浏览和各种模糊查询,可以选择增加打印功能;同时要提供数据的备份与恢复功能,以防数据遭到破坏。
(2)学校教材管理系统
功能要求:
本系统能对学校所有班级的教材进行征订,对教材的入库、出库进行管理,能进行各种条件的查询、打印,还应具有教材库预警机制(教材库存不够用或教材征订过剩,都能给予提示)。
(3)高校学生成绩管理系统
功能要求:
学生成绩管理使教学管理的一个重要环节,本系统能够进行学生成绩登记、成绩的更正、成绩的查询、成绩的汇总及排序,对已毕业学生成绩能存入历史库中,对于保存一定年限的成绩能进行清除、要求有良好的界面,具有良好实用性。
(4)图书管理
功能要求:
本系统能对图书入库、出库的管理,并安装国家标准对各种图书进行分类。
用户可以通过终端查询到在库的图书,并且如果图书已借出,可以查询到是谁借出的,在什么时候借的。
(5)客房管理系统
功能要求:
本系统能对一个宾馆的客房进行管理,用户可以预约、登记、注销客房。
对于已预约的客房,不可以再预约或登记,一旦客户入住某客房,可以在此系统中查询到该客户的信息。
(6)酒店餐饮管理
功能要求:
用户可以通过本系统点餐,点出来的菜单可以自动在厨房打印出来,一旦菜做好以后,可以通过任何一个终端,查询出该菜是哪一桌客户的。
最后,客户可以通过终端查询出自己用餐的详单并结帐。
(7)工资管理系统
功能要求:
财务可以通过该系统分项录入员工的工资,并且可以把工资与出勤情况一致起来,只要给出出勤表,系统可以自动生成员工的工资。
员工可以在客户端根据自己的用户名和密码查询到自己的工资。
(8)零件交易中心管理系统
功能要求:
主要提供顾客和供应商之间完成零件交易的功能,其中包括供应商信息、顾客信息以及零件信息、供应商信息包括供应商号、供应商名、地址、电话、简介;顾客信息包括顾客号、顾客名、地址、电话;零件信息包括零件号、零件名、重量、颜色、简介等。
此系统可以让供应商增加、删除和修改所提供的零件产品,还可以让顾客增加、删除和修改所需求的零件。
交易员可以利用顾客提出的需求信息和供应商提出的供应信息来提出交易的建议,由供应商和顾客进行确认后即完成交易。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- SQL 程序设计实验指导书ATA 程序设计 实验 指导书 ATA