ExecuteNonQuery 返回值注意點

2021-04-13 22:20:42 字數 538 閱讀 2304

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

sqlcommand.executenonquery 方法對連線執行 transact-sql 語句並返回受影響的行數。

備註:可以使用 executenonquery 來執行目錄操作(例如查詢資料庫的結構或建立諸如表等的資料庫物件),或通過執行 update、insert 或 delete 語句,在不使用 dataset 的情況下更改資料庫中的資料。

雖然 executenonquery 不返回任何行,但對映到引數的任何輸出引數或返回值都會用資料進行填充。對於 update、insert 和 delete 語句,返回值為該命令所影響的行數。對於所有其他型別的語句,返回值為 -1。如果發生回滾,返回值也為 -1

看完後才明白,原來select語句不適合executenonquery()方法,原來是這樣,真笨,方法用錯了!特意把它記錄下來,希望朋友不要犯類似的錯誤! 

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 方法對連...