经常写存储过程,但今天在游标使用过程中还是疏忽了一些事情,执行过程中一直执行不下去,后来直接sqlserver挂了,教训啊!

代码虽简单,望铭记:

Create  PROCEDURE [dbo].[temphxb]
AS
BEGIN
declare @uid int
declare mycursortemp Cursor
for select uid from temptable1 where Indate>'2015-05-21' and type='' group by uid having COUNT(*)>
open mycursortemp
fetch next from mycursortemp into @uid while @@FETCH_STATUS=
begin
delete from temptable1 where id
in (select top id from temptable1 where uid=@uid and Indate>'2015-05-21' and fdtype='') update temptable2 set num=num+ where uid=@uid
fetch next from mycursortemp into @uid
end close mycursortemp
DEALLOCATE mycursortemp
end

游标使用过程中,一般分为以下五个步骤:
1、声明游标

2、打开游标

3、使用游标

4、关闭游标

5、删除游标

今天本人就是在第三步游标遍历数据中忘记去执行  fetch next from mycursortemp into @uid,导致死循环发生,造成不小的损失。
另外很多人忘记关闭游标,这也会造成下次执行发生错误。

数据库操作需要谨慎谨慎,切记。

Sqlserver游标复习的更多相关文章

  1. SqlServer游标的创建与使用

    前言 大家都对SqlServer视图.存储过程.触发器的创建与使用有一定的了解了,我们来看下什么是游标,怎么使用,什么时候用. SqlServer视图的创建与使用 SqlServer存储过程的创建与使 ...

  2. sqlserver 游标的使用

    declare @temp_temp uniqueidentifier--临时变量 DECLARE aaa CURSOR for select Id from A ------------------ ...

  3. SqlServer游标简介

    游标实例:             Declare MyCusror Cursor Scroll For Select * From Master_Goods Order By GoodsID Ope ...

  4. sqlserver 游标

    DECLARE ChangeInvCodeCursor CURSOR FOR SELECT A.name AS tablecolumn,C.name AS tablename FROM sys.col ...

  5. SqlServer基础复习

    一.数据类型      包括整数类型(可以用来做主键)的如bit,int ,samllint,tinyint,bigint,存储的范围不同,常用的有int,bigint等:树脂类型decimal(p, ...

  6. SQLServer游标(Cursor) (B)

    游标(Cursor)是处理数据的一种方法,为了查看或者处理结果集中的数据,游标提供了在结果集中一次以行或者多行前进或向后浏览数据的能力.我们可以把游标当作一个指针,它可以指定结果中的任何位置,然后允许 ...

  7. SQLServer 游标 (A)

    游标 游标分为客户端游标和服务器端游标.Sql通过游标可以对一个结果集进行逐行处理.对于使用服务器端游标的过程有:声明.打开.读取.关闭.释放. 1 声明游标 1.1 SQL-92标准的声明 Decl ...

  8. SQLserver游标原理和使用方法

    在数据库开发过程中,当你检索的数据只是一条记录时,你所编写的事务语句代码往往使用SELECT INSERT 语句.但是我们常常会遇到这样情况,即从某一结果集中逐一地读取一条记录.那么如何解决这种问题呢 ...

  9. (转)sqlserver游标概念与实例全面解说

    首先声明:该文章转自http://www.cnblogs.com/wudiwushen/archive/2010/03/30/1700925.html  的博客 引言  我们先不讲游标的什么概念,步骤 ...

随机推荐

  1. AngularJS中的方法参数的问题

    在使用AngularJS开发的过程中出现了如下的问题,一次贴记录下. 感觉也不能说是AngularJS的语法,应该说是JS里面的处理流程应该就是这样子,我现在想通过前端页面传递值到后端(通过方法传递) ...

  2. Model验证功能

    占位符  {0}对应属性  {1}对应minimum  {2}对应maximum   [StringLength(15, MinimumLength = 6, ErrorMessage = " ...

  3. overflow

    1. 隐藏x轴滚动条,垂直有滚动条: <body> <div style="width:100px;height:150px;overflow:scroll;overflo ...

  4. 【转】mysql_fetch_row , mysql_fetch_array , mysql_fetch_assoc 的区别

    <?php $link = mysql_connect('localhost', 'root', ”); mysql_select_db('abc', $link); $sql = “selec ...

  5. 十二种获取Spring的上下文环境ApplicationContext的方法

    转载:https://my.oschina.net/u/2391658/blog/729414

  6. 三种常用的MySQL建表语句(转)

    MySQL建表语句是最基础的SQL语句之一,下面就为您介绍最常用的三种MySQL建表语句,如果您对MySQL建表语句方面感兴趣的话,不妨一看. 1.最简单的: CREATE TABLE t1(    ...

  7. Effective c++读书笔记

    1.视C++为一个语言联邦     C.object-oriented C++.template C++.STL 2.尽可能使用const:     1)关键字const出现的星号左边,表示被指物事常 ...

  8. 利用伪类:before&&:after实现图标库图标

    一.实现如下效果 二.代码实现思路 图案一源码 <!DOCTYPE html> <html> <head> <meta charset="utf-8 ...

  9. Web 前端开发精华文章集锦(jQuery、HTML5、CSS3)【系列十七】

    <Web 前端开发精华文章推荐>2013年第五期(总第十七期)和大家见面了.梦想天空博客关注 前端开发 技术,分享各种增强网站用户体验的 jQuery 插件,展示前沿的 HTML5 和 C ...

  10. C#枚举、结构、数组、排序