zoukankan      html  css  js  c++  java
  • 查询语句影响的行数

    在SQL Server中,使用全局变量@@RowCount 和函数RowCount_Big()返回上一条语句影响的行数。如果行数大于 20 亿,则需要使用ROWCOUNT_BIG()。

    1,使用@@RowCount 和 RowCount_Big() 能够获取查询和更新命令影响的行数:

    1. 获取select子句返回的结果集的行数
    2. 获取数据更新命令(insert,update 或 delete)影响的行数

    2,设置查询语句返回的数据行数

    set RowCount @Num

    Set ROWCOUNT选项在语句执行时设置,只会影响当前 Session,一个Session将使用最近一次设置的ROWCOUNT,直到Session结束或修改了ROWCOUNT。

    取消ROWCOUNT限制

    SET ROWCOUNT 0 

    3,使用Top子句设置数据修改语句(delete,update,insert)影响的数据行数

    delete top (10)
    from dbo.table_name
    
    update top (10) dbo.table_name
    set col_name='xxx'
    
    insert top(10) into dbo.table_name
    select .....

    4,示例

    使用 declare 子句定义一个变量不会影响上一条语句影响的数据行数,可以定义一个int 变量,存储 @@RowCount 和 RowCount_Big() 的返回值。

    SET ROWCOUNT 0
    -- return 10 records
    select top 10 * 
    from sys.objects
    
    --return value is 10
    select @@ROWCOUNT,ROWCOUNT_BIG()
    
    --return value is 1
    select ROWCOUNT_BIG()
    
    --declare 子句不会影响返回的数据行数
    declare @n int
    select ROWCOUNT_BIG(),@@rowcount
    
    --set 和 select 子句影响数据行数是1
    set @n=10
    select ROWCOUNT_BIG(),@@rowcount
  • 相关阅读:
    各种贴图
    d3d11devicecontext
    小记2
    Tom Ryaboi
    Tessellation
    关于图形学
    第一章实验
    控制输入框只接收数字及小数点
    JQuery控制文本框是否可以输入
    SQLSERVER中查询一个存储过程使用到的地方
  • 原文地址:https://www.cnblogs.com/ljhdo/p/4634011.html
Copyright © 2011-2022 走看看