ExecuteNonQuery 返回值問題

2021-04-13 08:28:52 字數 488 閱讀 9990

關於sqldatacommand.executenonquery 方法

msdn曰:

可以使用executenonquery執行編錄操作(例如查詢資料庫的結構或建立諸如表等的資料庫物件),或通過執行 update、insert 或 delete 語句更改資料庫中的資料。

雖然executenonquery不返回任何行,但是對映到引數的任何輸出引數或返回值都會用資料進行填充。

對於 update、insert 和 delete 語句,返回值為該命令所影響的行數。對於其他所有型別的語句,返回值為 -1。

9499.net

但是我今天發現用executenonquery執行update,insert和delete的儲存過程,返回的都是-1,怪了,怪了。

搞了半天,發現原來儲存過程裡面有set nocount on這一行,把它去掉,結果才能符合msdn之結論。

ExecuteNonQuery方法教訓

錯誤原因 我在使用executenonquery 方法的時候,用了select,查了資料才發現犯了如此錯誤!基礎問題!publicintexecutenonquery 返回值 受影響的行數。update insert delete 實現 idbcommand.executenonquery 備註 您...

使用ExecuteNonQuery()運算元據

函式executenonquery 可以對資料庫執行更新,插入,刪除操作,並返回操作影響的行數,若執行語句不是sql語句,則返回 1,應用例項如下 配置檔案資訊 程式 如下 using system using system.data using system.configuration using...

ExecuteNonQuery 的注意點

最近忙個專案,在查詢某個表中是否有資料的時候,我用了executenonquery 並通過判斷值是否大於0來判斷資料的存在與否。結果與我所設想的很不一致,除錯時才發現,其執行後返回的結果是 1,對此我很是不理解,回頭查了下資料,如下顯示 sqlcommand.executenonquery 方法對連...