Sql-Server

表更新導致前端 SQL 語句失敗

  • March 3, 2017

我們處於需要向數據庫添加多行數據的情況,並決定最有效的方法是使用 SQL INSERT INTO 語句。這張桌子非常簡單。一個主鍵列加上另外七列,其中三列是日期列。該表沒有任何具有 IDENTITY 屬性的約束或列。我們使用 MAX 函式來確定分配的最高主鍵 ID,然後將該值加 1 以添加新行。

後端和前端的一切似乎都很順利。但是,現在當最終使用者通過前端輸入新記錄時,他們會收到錯誤消息“SQL 語句失敗,這可能是由網路或數據庫問題引起的”。這是相關的,因為它只發生在與我們更新的表直接關聯的欄位上。

任何人都可以對可能發生的事情提供任何見解嗎?

打開sql profiler,得知有一個sequence table,用來判斷下一個主鍵id。更新了這個表並刪除了記憶體。在伺服器上執行了重新啟動,問題就解決了。簡而言之,這是主鍵違規。

感謝導致 sql profiler 的 sql trace 想法。

引用自:https://dba.stackexchange.com/questions/165114