T-Sql

刪除少量行掛在 tsql 數據庫中

  • November 8, 2019

所以我只是想從我們的一個測試數據庫中刪除一些壞數據。我已經確定了要刪除的行,並編寫了一個簡單的查詢來處理這個問題。

但是,在執行時,查詢會在完成 4% 時掛起,並且會在那裡停留數小時。我們的數據庫託管在 Azure 上 - 對於這個測試數據庫,我們正在執行具有 10 個 DTU 的標準 SO。

我在這裡想念什麼?

ql

可能是那個表的級聯外鍵

$$ Shift Offer $$有指向表$$ Availability $$, 減慢你的刪除操作 嘗試以下操作:

  1. 在列上創建非聚集索引

$$ Shift Offer $$$$ availability_id_fk $$ 並嘗試再次執行您的查詢;看看非聚集索引是否加快了速度 2)如果仍然執行太久,請嘗試完全禁用外鍵(執行sql命令)

alter table [Shift Offer] nocheck constraint [paste your constraint name     
here I guess its availability_id_fk]

執行刪除命令,如果成功並且執行速度很快,您將不得不手動刪除記錄

$$ Shift Offer $$表,如果它有任何行的availability_id_fk值已從中刪除$$ Availability $$表,然後啟用外鍵

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