none
使用ADO.NET操作SQL預存程序,無例外彈出,但是資料沒寫進資料庫? RRS feed

  • 問題

  • 該預存程序只有一個對一個SQL資料表的Insert操作
    使用 SqlCommand 的 ExecuteNonQuery() 操作傳回1 (傳回受影響的資料筆數)
    理論上資料應該要寫進資料庫裡
    可是用SQL Server Management Studio 反覆查過好幾遍
    資料就是沒Insert進去?
    Server也重新開機過了, 確定不是資料庫被Lock住
    這到底是怎麼回事? 有人遇過類似的問題嗎?

    player

    2015年11月16日 上午 09:39

所有回覆

  • 檢查有沒有跑錯資料庫。

    強力監督SQL Injection問題!!

      • 小朱的技術隨手寫:http://www.dotblogs.com.tw/regionbbs/
      • 雲端學堂Facebook: http://www.facebook.com/studyazure

    2015年11月16日 上午 10:00
    版主
  • 檢查過 SqlConnection
    確定是連到自訂的 Test 資料庫
    SQL Server Management Studio 也是到 Test 資料庫去Select檢查有沒有寫入
    確定資料沒寫進去
    如果是我在SqlCommand 傳參數的地方有寫錯的話
    理論上SqlCommand 的 ExecuteNonQuery() 操作應該傳回0 或是彈出例外
    可是卻是傳回1
    又找不到資料沒寫進去資料表的原因?

    player

    2015年11月16日 上午 10:49
  • http://blogs.msdn.com/b/spike/archive/2009/01/27/sqlcommand-executenonquery-returns-1-when-doing-insert-update-delete.aspx

    強力監督SQL Injection問題!!

      • 小朱的技術隨手寫:http://www.dotblogs.com.tw/regionbbs/
      • 雲端學堂Facebook: http://www.facebook.com/studyazure

    2015年11月16日 下午 12:00
    版主
  • 最快的方式就是直接開sql profiler去監看所有run的sql command  ,就知道了
    ,只要你的AP有送出sql command ,sql profiler就會錄的到,並且所有參數值統統都看的到

    微軟免費線上課程

    HTML5 & JavaScript程式開發實戰(MyBook)

    開發ASP.NET您要瞭解的基楚

    http://www.dotblogs.com.tw/ian (MyBlog)

    2015年11月17日 上午 01:37
  • 您可以檢查您的連線寫法, 如果連線到SQL Server LocalDB, 就要用SQL Server Management Studio開啟SQL Server LocalDB實際的位置
    2015年11月17日 上午 01:51