@@ROWCOUNT全局变量

  返回上一语句受影响的行数!和@ERROR一样的特性,在每一条语句执行后都将被重置,如果将来使用需要将变量保存到局部变量中。任何不返回的语句都将这个变量置为0!比如经常使用的IF语句。废话少说,上代码!

  DECLARE @RowCountVar INT

  Update AF_CarOil SET OilType = '五号汽油'--执行后@@ROWCOUNT为2

  SET @RowCountVar = @@ROWCOUNT --执行后@@ROWCOUNT为1

  IF @@ROWCOUNT = 1 --执行后@@ROWCOUNT为0

  BEGIN

  PRINT '影响的行数为1'

  PRINT @@ROWCOUNT

  END

  IF @RowCountVar <> 0

  BEGIN

  PRINT '受影响的行数为:' + STR(@RowCountVar)

  END

  -----------------------------------------------------------------

  (2 行受影响)

  影响的行数为 1

  0

  受影响的行数为: 2

  分析:上面的代码中在执行Update语句之后,受影响的行数为2行,然后将受影响的行数保存到事先声明的局部变量中,赋值语句实际上影响的行数为1行,在下面的IF语句中进行了跳转,这个地方是关键,这并不是Update语句受影响的行数是1,而是将@@ROWCOUNT将的赋给局部变量的过程中变成了1。在执行后IF @@ROWCOUNT = 1的判断之后@@ROWCOUNT的数值重新被赋值为了0!

时间: 2024-11-03 06:50:59

@@ROWCOUNT全局变量的相关文章

sql server中局部变量与全局变量的 申明与赋值

局部变量用一个@标识,全局变量用两个@(常用的全局变量一般都是已经定义好的): 申明局部变量语法:declare @变量名 数据类型:例如:declare @num int: 赋值:有两种方法式(@num为变量名,value为值) set @num=value;   或   select @num=value; 如果想获取查询语句中的一个字段值可以用select给变量赋值,如下: select @num=字段名 from 表名 where -- mysql教程中变量不用事前申明,在用的时候直接用

c/c++全局变量的声明和定义

问题描述 c/c++全局变量的声明和定义 1.cpp const int point=50; //point 里放的是特征点的数量 fun1(){...} 2.h extern const int point; 3.cpp #include"2.h" fun2(){ float a[point]={0,} }//在cpp里定义一个point维的数组 4.h #include"2.h" class ObsFun { ObsFun(); ..... } ObsFun()

全局变量-js刷新页面后怎么能保存之前赋值的数据不丢失

问题描述 js刷新页面后怎么能保存之前赋值的数据不丢失 在jsp页面中通过js刷新页面,在刷新之前我给input标签和A标签都赋值了 以及和一些全局变量都赋值了. 我想通过js刷新之后把刚才标签或者是变量的值都保存下来,以便接下来用. 但是,现在js刷新之后上面的那些数据都丢失了. 请问有什么办法能让刷新之后还能保存住数据不丢失. 那位大神知道. 解决方案 页面无刷新调用数据(IFRAME+js) 解决方案二: 刷新后,你先查一下保存的变量中的数值是否正确? 如果正确,则需要在刷新完成后执行一下

PHP中超全局变量$GLOBALS和global的区别

本篇文章分享一下关于PHP中的超全局变量$GLOBALS和global的区别. 一.超全局变量$GLOBALS   PHP超全局变量有很多,如下的都属于超全局变量(Superglobal):   $GLOBALS,$_SERVER,$_GET,$_POST,$_FILES,$_COOKIE,$_SESSION,$_REQUEST,$_ENV.   官方说明: $GLOBALS - 引用全局作用域中可用的全部变量. 一个包含了全部变量的全局组合数组.变量的名字就是数组的键. 即出现过的全局变量,就

php9个超全局变量的用法详解(二)

今天来讲一下$_GET()与$_POST(). 其实很容易理解,根据表面意思就可以看得出来,是获得post与get表单的数据,其实也正是如此,来点专业的话来讲, $_GET 变量是一个数组,内容是由 HTTP GET 方法发送的变量名称和值. $_GET 变量用于收集来自 method="get" 的表单中的值.从带有 GET 方法的表单发送的信息,对任何人都是可见的(会显示在浏览器的地址栏),并且对发送的信息量也有限制(最多 100 个字符).好,看个例子,上简单登录界面的代码: 登

php9个超全局变量的用法详解(一)

PHP 中的许多预定义变量都是"超全局的",这意味着它们在一个脚本的全部作用域中都可用.在函数或方法中无需执行 global $variable; 就可以访问它们. 这些超全局变量是: $GLOBALS $_SERVER $_GET $_POST $_FILES $_COOKIE $_SESSION $_REQUEST $_ENV 1.先看一下$GLOBALS,它是包含了全部变量的全局组合数组,什么意思呢,看一个c语言程序 int main() { int a = 3; void t(

TOP N 和SET ROWCOUNT N 哪个更快?

懒得翻译了,大意:在有合适的索引的时候,Top n和set rowcount n是一样快的.但是对于一个无序堆来说,top n更快.原理自己看英文去. Q. Is using the TOP N clause faster than using SET ROWCOUNT N to return a specific number of rows from a query? A. With proper indexes, the TOP N clause and SET ROWCOUNT N st

全局变量让你告别繁琐的路径

变量 有时候,有一些非常重要的MovieClip,比如一些操作信息的提示类型的MC(比如叫做"a"),需要不断的改变其属性,比如一个文本框.而这些改变又是由许多不同的MC或者Button的一些事件触发的,甚至,触发这些事件的Button和MC在很远的路径,要找到我们这个a,需要拐很多弯路.那么这时候,可以在a建立好了之后直接将a保存在一个全局变量中.注意,我们只是保存一个指向,而非一个MC实例.那么,以后再其他路径下对a的操作,则可以把繁琐的_parent.这些全部去掉了.当然,关于传

Flash全局变量让你告别繁琐的路径

变量 有时候,有一些非常重要的MovieClip,比如一些操作信息的提示类型的MC(比如叫做"a"),需要不断的改变其属性,比如一个文本框.而这些改变又是由许多不同的MC或者Button的一些事件触发的,甚至,触发这些事件的Button和MC在很远的路径,要找到我们这个a,需要拐很多弯路.那么这时候,可以在a建立好了之后直接将a保存在一个全局变量中.注意,我们只是保存一个指向,而非一个MC实例.那么,以后再其他路径下对a的操作,则可以把繁琐的_parent.这些全部去掉了.(相关文章: