Sqlserver循环嵌套
1.游标的状态,游标的开启游标的选择都是需要注意的。
USE [ccnu]
GO /****** Object: StoredProcedure [dbo].[P_ADD_DATA_XSBLHYCQK] Script Date: 2015/2/13 10:32:46 ******/
SET ANSI_NULLS ON
GO SET QUOTED_IDENTIFIER ON
GO -- =============================================
-- Author: <Author,,Zen>
-- Create date: <Create Date,,>
-- Description: <Description,,>
-- =============================================
CREATE PROCEDURE [dbo].[P_ADD_DATA_XSBLHYCQK]
AS
declare @fdy varchar(200),@xs_id varchar(200),@bzr varchar(200),@sex varchar(200);
declare @kind varchar(200),@ssbh varchar(200),@xyan varchar(200),@class varchar(200);
declare @bbq varchar(200);
declare @swsc numeric; -- 上网时长
declare @ZHHSSSJ time; -- 最后回宿舍时间
declare @day int ;-- 天数 DECLARE @RandomNumber float
DECLARE @RandomInteger int;
DECLARE @MaxValue int;
DECLARE @MinValue int; BEGIN
set @day = 0;
--打开游标
while @day<14
begin
select @bbq=CONVERT(nvarchar(8),cast('2015-02-01' as datetime) +@day,112)
declare cur_JQLXXX CURSOR FOR SELECT [FDY]
,[BZR]
,[CLASS]
,[SSBH]
,[SEX]
,[ID]
,[KIND]
,[DEPT]
FROM [ccnu].[dbo].[WG_JQLXXX0212];
open cur_JQLXXX
--开始循环游标变量
FETCH NEXT FROM cur_JQLXXX INTO @fdy,@bzr,@class,@ssbh,@sex,@xs_id,@kind,@class
WHILE @@FETCH_STATUS = 0
begin
SET @MaxValue = 5*60*60
SET @MinValue = 1*60*60 SELECT @RandomNumber = RAND() SELECT @swsc = ((@MaxValue + 1) - @MinValue) * @RandomNumber + @MinValue select @ZHHSSSJ=dateadd(second,ceiling(rand() * 25200)+61200,cast('2015-02-01' as datetime)+@day)
--执行sql操作
insert into [ccnu].[dbo].WG_XSBLHYCQK0212([BBQ]
,[XS_ID]
,[XB]
,[XS_TYPE]
,[SUSE_ID]
,[XYUAN]
,[ZYE]
,[BJI]
,[BZR]
,[FDY]
,[SFWG]
,[SFYC]
,[SWZSC]
,[FZCSDSWSC]
,[YCKSRQ]
,[YCJSRQ]
,[ZHHSSSJ])
select @bbq,@xs_id,@sex,@kind,@ssbh,@xyan,NULL,@class,@bzr,@fdy,0,0,@swsc,0,null,null,@ZHHSSSJ
FETCH NEXT FROM cur_JQLXXX INTO @fdy,@bzr,@class,@ssbh,@sex,@xs_id,@kind,@class --取下一条数据
end
CLOSE cur_JQLXXX --关闭游标
deallocate cur_JQLXXX --释放游标,写循环嵌套的时候一定要注意内层游标一定要在外层游标的包含内声明、关闭或释放。
select @day=@day+1
end END GO
Sqlserver循环嵌套的更多相关文章
- SQL连接操作符介绍(循环嵌套, 哈希匹配和合并连接)
今天我将介绍在SQLServer 中的三种连接操作符类型,分别是:循环嵌套.哈希匹配和合并连接.主要对这三种连接的不同.复杂度用范例的形式一一介绍. 本文中使用了示例数据库AdventureWorks ...
- C#用链式方法表达循环嵌套
情节故事得有情节,不喜欢情节的朋友可看第1版代码,然后直接跳至“三.想要链式写法” 一.起缘 故事缘于一位朋友的一道题: 朋友四人玩LOL游戏.第一局,分别选择位置:中单,上单,ADC,辅助:第二局新 ...
- for循环与for循环嵌套
今天温习了下分支语句跟for循环,主要讲解了for循环嵌套,这里开始有点迷糊了,整理下思路在做练习 for循环嵌套用我自己的大白话来说就是一个外圈的for程序里面一个套着一个小的for程序,如果在范围 ...
- tonado框架的列表嵌套 (template中for循环嵌套)
学习了tonado框架,渐渐开始明白模板的转换,以后肯定还会遇到很多问题... 功能描述: 页面显示读取的数据库父导航名称,再通过嵌套列表将子导航名称和地址查询出来,返回到 ...
- php for循环嵌套
<?php //2.打印一个50*50的 'o' 的正方形方整, 使用for的嵌套 // oooooo // oooooo // oooooo //for循环嵌套 ...
- For 循环嵌套 0309
For ...
- 循环嵌套,while循环,穷举迭代循环
一.循环嵌套 简单的就是说,在一个for循环里嵌入多个小for循环. 其中,在打矩形.三角形和乘法口诀表之类的题目中,大for循环一般表示的是行数,其余的小for循环式每一行中的内容. 二.while ...
- 6、C#基础整理(for 语句经典习题--for循环嵌套、穷举)
1.for循环嵌套----最基础题目:求阶乘的和 ; int n = int.Parse(Console.ReadLine()); ; i < n; i++) { ;//定义变量sum1,每次循 ...
- 黑马程序员——JAVA基础之程序控制流结构之循环结构,循环嵌套
------- android培训.java培训.期待与您交流! ---------- 循环结构: 代表语句:while ,do while ,for while语句格式 : while(条件表达式) ...
随机推荐
- 常用Linux运维命令
1.查看TCP连接状态 netstat -nat |awk '{print $6}'|sort|uniq -c|sort -rn netstat -n | awk '/^tcp/ {++S[$NF]} ...
- Pitfalls of the Hibernate Second-Level / Query Caches--reference
This post will go through how to setup the Hibernate Second-Level and Query caches, how they work an ...
- Database and models
Database and models The database Now that we have the Album module set up with controller action met ...
- Oracle建表实例
建表一般来说是个挺简单的事情,但是Oracle的建表语句有很多可选的参数,有些我们可能平时不太用,用的时候又不知道怎么用,这里就写一个较完整的建表的例子: CREATE TABLE banping ...
- 手机页面rem布局
手机页面设计一般的大小是640,但是,手机屏幕大小确实不确定的,这样,怎么才能做出适应所有手机的手机页面呢?一般的解决方案有两种,rem布局和百分比布局,更推荐用rem布局来制作手机页面. 首先,给页 ...
- Objective-C中NSArray和NSMutableArray是如何使用的?
Objective-C的数组比C++,Java的数组强大在于,NSArray保存的对象可以是不同的对象.但只能保存对象,int ,char,double等基本数据类型不能直接保存,需要通过转换成对象才 ...
- Objective-C /iphone开发基础:协议(protocol)
protocol协议时为了补充Objective-C 只能单继承的缺陷而增加的一个新功能.Objective-C重所有的方法都是虚方法,所以在oc重也就没有关键字 virtual一说,有了协议可以补充 ...
- Java队列实现
队列数组实现:队列长度有限,但是考虑到平时一般都使用有界队列,这应该也不算是个缺点 public class Queue { private Object[] objs; private int he ...
- 基于ARM的RealView MDK开发环境
RealView MDK可以对各种嵌入式处理器的软件开发工具.这么高端,着实很吸引我,ADS12还不知道怎么搞,居然还有这么高端的,但是还是得了解一下唉.洗这个自动配 置启动代码,集成Flash烧写模 ...
- Ubuntu Linux---控制用户权限:root特权/sudo
借了本<Ubuntu Linux指南>开始学学乌邦图吧,熟悉之后再下个红帽来玩玩,现在说说我们一直提到的root,但是在Linux中,这个root有所不同...大多数Linux系统都为一个 ...