网站大量收购闲置独家精品文档,联系QQ:2885784924

数据库股票五日均线.doc

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据库股票五日均线

实 验 报 告 专业:计算机科学与技术 班级:11科技2班 学号:201124131216 姓名:陈燕銮 课程名称:数据库应用与开发 学年:201 3-2014 学期1 /2 课程类别 专业必修 限选 任选 实践 实验时间201 4年4月20日 实验名称:五日均线 实验目的和要求 通过求5天股票成交价格或指数的平均值,对应的是股价的5日均线(5MA)和指数的5日均线(5MA)来掌握游标的定义与使用,EXECL表的导入 实验软硬件要求 PC ,win7,Microsoft SQL Server 2005 实验内容、方法和步骤 实验内容: 求5天股票成交价格或指数的平均值,对应的是股价的5日均线(5MA)和指数的5日均线(5MA)。 方法: 前四天没有五日均线,从第五天开始计算五日均线,先取得前4天的收盘的值总和再加上当天收盘的值然后除以 5,得到的结果就是当天的五日均线值。 实验结果(可附页) 小结: 通过本实验我了解了如何在数据库中导入execl表格,熟悉了如何声明使用游标,同时也了解了一些关于股票的知识。 评定成绩: 批阅教师: 年 月 日 流程图: 步骤: 在SQLsever2005中建一个名为Stock的数据库,之后将一张名为book的股票数据excel表导入到Stock数据库中 2.新建查询,输入以下Transact-SQL语言 create procedure stock_add as if COL_LENGTH(dataII,日均线)is not null/*判断表中是否存在列名为日 均线的列,存在就删除,不存在就创建,dataII表示数据表名*/ begin alter table dataII drop column 日均线 end alter table dataII add 日均线decimal(18,2) null GO create procedure stock_adcol @n int as set nocount on exec stock_add declare @i int /*定义循环变量i*/ declare @j int /*定义循环变量j*/ declare @y int /*定义变量y表示dataII表中数据的总量*/ --declare @n int /*定义变量n表示n日均线*/ declare @start float /*定义变量start表示某天前n日这天的收盘*/ declare @s float /*定义变量s表示某天前n日收盘的总和*/ declare @res float /*定义变量res表示某天的n日均线值*/ set @i=1 /*初始为*/ set @j=1 /*初始为*/ select @y=count(*) from dataII /*查询dataII数据表中数据的总量*/ set @start=0 /*初始为*/ set @s=0 /*初始为*/ declare test cursor SCROLL FOR /*定义游标名为test*/ select [ 时间],[ 收盘] from dataII /*取得要查询的结果集,游标指向此结果集*/ open test /*打开游标*/ declare @收盘float /*定义局部变量收盘,数据类型要跟表中的列保持一致*/ declare @时间nvarchar(255) /*定义局部变量时间,数据类型要跟表中的列保持一致*/ while @i@n /*求开始前n-1天的收盘总和,开始的前n-1天没有日均线*/ begin fetch ABSOLUTE @i from test into @时间,@收盘 /*游标直接定位到第i行,并把数据赋值给局部变量@时间,@收盘*/ set @s=@s+@收盘 set @i=@i+1 end while @i=@y /*从第n天开始求n日均线直到最后一日*/ begin fetch ABSOLUTE @i from test into @时间,@收盘 set @s=@s-@start+@收盘 /*求得i天的前n日收盘总和*/ set @res=@s/@n /*求得n日均线,把结果存放到变量res中。*/ update dataII set 日均线=@res where [ 时间]=@时间 /*更新日均线的值,把求得的日均线的值更新到日均线列*/ fetch ABSOLUTE @j from test into @时间,@收盘 /*求得

您可能关注的文档

文档评论(0)

xcs88858 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档