2010-01-07 75 views
2

我有一個插入語句,將一些數據拉入幾個表變量,然後基於這些數據插入幾個表中。我只關心插入真實表格而不是表格變量的行,但ExecuteNonQuery將返回所有@@ ROWCOUNT的總和。我想知道的是有沒有辦法來覆蓋使用ExecuteNonQuery返回的rowcount?使用ExecuteNonQuery覆蓋SQL Server中受影響的行?

我知道我可以使用ExecuteScalar或輸出變量作爲替代。

下面是沸騰它歸結爲一個簡單的例子,一個例子:

CREATE TABLE VersionExample (Version Varchar(255)) 

Declare @RowCountICareAbout int 

DECLARE @Example TABLE (Version Varchar(255)) 

INSERT INTO @Example Select @@VERSION 

INSERT INTO VersionExample SELECT Version FROM @Example 

SET @RowCountICareAbout = @@ROWCOUNT 

--Use @RowCountICareAbout as the rows affected returned to ExecuteNonQuery 
+1

沒有,我所知道的 - 它是一個內置變量...聽起來像是你回答了你自己問題...使用輸出變量。 –

回答

0

沒有,沒有辦法推翻或改變ADO.NET或SQL Server中的行爲。

您擁有的唯一選擇是捕獲您感興趣的行數並將其放入一個變量並返回它們。

相關問題