Hey Tôi đã tự hỏi làm thế nào tôi có thể thiết lập một nhiệm vụ làm sạch trên một bảng cụ thể để xóa nội dung mà cho phép nói một tuần tuổi.Nhiệm vụ SQL hàng ngày để xóa nội dung từ một bảng
Tôi đang sử dụng SQL Server 2005
Hey Tôi đã tự hỏi làm thế nào tôi có thể thiết lập một nhiệm vụ làm sạch trên một bảng cụ thể để xóa nội dung mà cho phép nói một tuần tuổi.Nhiệm vụ SQL hàng ngày để xóa nội dung từ một bảng
Tôi đang sử dụng SQL Server 2005
Trong SQL Server Management Studio, mở rộng SQL Server Agent, nhấp chuột phải vào "Jobs" và chọn "công việc mới ..."
trong "bước", tạo ra một "New ..." một và nhập này:
DELETE YourTable WHERE YourDate<GETDATE()-7
hoặc không có liên quan đến việc sử dụng thời gian:
DELETE YourTable WHERE YourDate<DATEADD(day,DATEDIFF(day,0,GETDATE()-7),0)
trong "Schedule", bạn có thể làm cho nó chạy mỗi Chủ Nhật hoặc bất cứ điều gì bạn cần.
Bạn có thể tạo công việc xóa mọi thứ cũ hơn một tuần. Ví dụ:
DELETE FROM MyTable
WHERE DateCreated <= dateadd(d, -7, getdate())
Giả thiết, bạn có một số cách theo dõi tuổi của bản ghi trong bảng và cũng giả định không có ràng buộc khóa ngoại.
Sau đó, bạn có thể lên lịch công việc để chạy khi người dùng không được kết nối.
Cảm ơn người đàn ông vì điều đó – StevieB