2014-04-17 159 views
0

在我的數據庫中,我遇到了問題。問題是在一兩天後,我發現有些記錄丟失了,這些記錄沒有被我或任何用戶刪除。如何解決這個問題好心幫某些記錄從我的sql數據庫中自動刪除

就像當我進入對時間的數據我的數據是一些記錄丟失

Enquiry_Id  Day_No Ckeck_In   Destination 
RH - 07/11/2013 - 1 1  2013-12-23   Cochin 
RH - 07/11/2013 - 1 2  2013-12-24   Munnar 
RH - 07/11/2013 - 1 3  2013-12-25   Kovalam 
RH - 14/11/2013 - 2 1  2013-11-21   Thekkady 
RH - 14/11/2013 - 2 3  2013-11-23   Cochin 

Enquiry_Id   Day_No Ckeck_In   Destination 
RH - 07/11/2013 - 1 1  2013-12-23   Cochin 
RH - 07/11/2013 - 1 2  2013-12-24   Munnar 
RH - 07/11/2013 - 1 3  2013-12-25   Kovalam 
RH - 14/11/2013 - 2 1  2013-11-21   Thekkady 
RH - 14/11/2013 - 2 2  2013-11-22   Munnar 
RH - 14/11/2013 - 2 3  2013-11-23   Cochin 

後1〜2天像每天2 mising即時通訊工作與asp.net(C#)。請幫我解決這個問題。

+0

有沒有任何存儲過程對此負責? –

+0

必須刪除它們 - 可以是代碼中的某些內容,也可以是數據庫上的計劃任務。沒有更多的信息是不可能告訴的。 – Andrew

+0

它會發生在隨機桌面還是特定桌面上?一直都是一樣的? – Jester

回答

0

它不會自動刪除數據。它必須是特定的。

以下是可能造成問題的一些原因。

  1. 檢查您的刪除查詢,並查看該查詢的where子句是完美還是刪除其他數據。
  2. 檢查可能更新/刪除此數據的後臺任務或作業。
  3. 檢查您的代碼與其他刪除查詢是否存在問題。
0

這是一個奇怪的問題。我會嘗試在桌面上實現一些日誌記錄,我可以看到兩種方法: 1)在將日期戳和用戶標記寫入某個自定義日誌記錄表的表上創建刪除觸發器。這種方法可以提供一些基本的細節。 2)打開服務器審計(SQL Server Audit)。這可能是很麻煩的,但如果有一個被遺忘的:)

0

我Jalphesh同意沒有其他的想法...

而且我會檢查表的依賴關係找到所有SP可以從該表中刪除,東西,但是如果數據保留至關重要,那麼您可以使用「INSTEAD OF DELETE TRIGGER」來停止它,並且它應該在發生錯誤的位置產生錯誤。您還可以在數據庫上運行trace /(Profiler)以突出顯示。觸發器如下:

CREATE TRIGGER IO_Trig_DEL_Enquiry ON Enquiry 
INSTEAD OF DELETE 
AS 
BEGIN 
    RAISERROR ('DONT DO THIS', -- Message text. 
       16, -- Severity. 
       1 -- State. 
       ); 
END 

刪除觸發器(顯然),一旦所有解決。您也可以將一些服務器信息寫入數據庫表中以獲取上下文。