use*_*099 13 sql t-sql sql-server sql-server-2008
我读过一些关于ROWCOUNT的内容,但它并不是我想要的.从我的理解rowcount说明运行查询后受影响的行数.我正在寻找的是在运行查询之前知道.这可能吗?
Joe*_*eph 11
简短的回答是没有..
在SQL Server中执行query..atleast之前,无法获取行数.
最好的方法是使用
Select count(*) from <table> where <condtion>
Run Code Online (Sandbox Code Playgroud)
然后执行您的实际查询
[delete]or [update] [set col='val']
from <table> where <condtion>
Run Code Online (Sandbox Code Playgroud)
jab*_*abs 10
您也可以BEGIN TRANSACTION
在执行操作之前使用.您可以看到受影响的行数.从那里,COMMIT
结果或用于ROLLBACK
将数据恢复到原始状态.
BEGIN TRANSACTION;
UPDATE table
SET col = 'something'
WHERE col2 = 'something else';
Run Code Online (Sandbox Code Playgroud)
查看已更改的数据,然后:
COMMIT;
Run Code Online (Sandbox Code Playgroud)
要么
ROLLBACK;
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
8136 次 |
最近记录: |