- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
中南大学
实 验 报 告
|
|
课程名称 实验三 存储过程、触发器与索引
|
|
专业班级:智能1202 学生姓名:
学 号: 成 绩:
指导教师: 实验日期:
一、实验目的
熟悉大型数据库实验环境,以MS SQL SERVER为例。
掌握视图。
掌握存储过程与触发器。
掌握MS SQL SERVER的导入和导出。
掌握MS SQL SERVER的索引。
二、实验要求
提前预习实验,认真阅读实验原理以及相应的参考书。
要求在上机的课时内做完。
实验中服从实验室管理人员以及实验指导老师的管理。
认真撰写实验报告,内容可以自己编排。
三、实验所需仪器、设备、材料
计算机、SQL软件、可视化开发平台以及各类参考书。
四、实验内容
(1)使用“实验一”中的数据库“abc”,创建一个视图,生产厂家为“北京”且价格低于北京生产的产品的平均价格,输出产品的名称、价格和生产厂家。
(2)使用“实验一”中的数据库“abc”,创建一个带有输入参数的存储过程proc_abc,查询指定职工的销售记录,用户输入职工编号,存储过程返回职工名称、产品名称、销售日期、销售数量,假如执行存储过程时所提供的“职工编号”不存在,存储过程应给予一定的提示。
(3)使用“实验一”中的数据库“abc”,练习使用游标, 写出按如下报表形式显示结果的SQL语句,该报表查询每年每种产品总销售金额,(总销售金额=价格*销量),报表显示格式如下所示:
年 产品号 产品名 销售总量 总销售金额(万元)
2001年 2 AAA 590 3.2
2001年 5 BBB 644 23.3
2002年 1 CCC 32 0.2
(4)使用“实验一”中的数据库“abc”,练习使用触发器,在销售表上创建触发器tr_updateprice,每次新增销售记录时,自动更新产品表的单价,更新方法是:每增加一笔销售记录,就将该产品的单价减去1块钱。
(5)将100万行网络连接监控数据Netflow导入数据库,创建多个索引,观察创建索引对数据库文件大小的影响;并设计不同的查询语句来观察索引对查询效率的影响;可以尝试将100万行记录扩展为1000万行,然后再做索引和查询的实验?文件见附件。
五、源代码
1.
CREATE view CPXX
AS
select CPM,JG,SCCJ
FROM CPB
WHERE SCCJ=北京AND JG(
SELECT AVG(JG)
FROM CPB
WHERE SCCJ=北京
)
2.
create @userinput VARCHAR(10)
as
declare @count int
SET @count=(
select count(*)
from XSRYB
where ZGH=@userinput
)
if (@count0)
begin
SELECT c.XM,a.CPM,b.XSRQ,b.XSSL
FROM CPB a,XSQKB b,XSRYB c
where a.CPH=b.CPH and b.ZGH=c.ZGH and b.ZGH=@userinput
end
else
begin
PRINT木有您所查找的职工
end
exec proc_abc G03
3.
declare @year int
declare @mycph varchar(100),@mycpm varchar(100),@myxsje float,
@myxszl varchar(100)
declare mycursor CURSOR FOR
select distinct year(XSRQB)
FROM XSRYB
ORDER BY year(XSRQB)
open mycursor
fetch next from mycursor into @year
while @@fetch_status=0
begin
print cast(@year as varchar(10))+年
declare cursor_cph cursor for
select a.CPH,A.CPM,B.XSSL,sum(b.XSSL*a.JG)
from CPB a,XSQKB b
WHERE a.CPH=b
您可能关注的文档
最近下载
- 锅炉本体检修工职业技能鉴定高级工试题.docx VIP
- 初中数学重点知识点梳理汇总.docx VIP
- [中国青铜器]01.第一章 概论.pdf VIP
- 德国探亲签邀请函中德文对照.docx
- 2024山西太原市古交市招聘劳动保障工作站和社区低保工作站人员笔试历年典型考题及考点剖析附答案带详解.docx VIP
- 2025年高等教育自学考试马克思主义基本原理概论真题及模拟试题汇编.doc VIP
- it审计的组织与实施(培训课件).ppt VIP
- 2025社区两保人员考试真题及答案.doc VIP
- 《春江花月夜》教学设计及课堂镜头.doc VIP
- 肿瘤多学科综合治疗模式与个体化治疗研究进展.docx VIP
文档评论(0)