Ba điều tôi đã học được trong suốt nhiều năm qua ...
Trước tiên, nếu bạn đang cập nhật hoặc xóa dữ liệu trực tiếp, trước tiên hãy viết một truy vấn SELECT với mệnh đề WHERE mà bạn sẽ sử dụng. Đảm bảo rằng nó hoạt động. Hãy chắc chắn rằng nó chính xác. Sau đó thêm câu lệnh UPDATE / DELETE vào mệnh đề WHERE đang hoạt động đã biết.
Bạn không bao giờ muốn có
DELETE FROM Customers
đang ngồi trong trình phân tích truy vấn của bạn chờ bạn viết mệnh đề WHERE ... vô tình nhấn "thực thi" và bạn vừa giết bảng Khách hàng của mình. Giáo sư.
Ngoài ra, tùy thuộc vào nền tảng của bạn, hãy tìm hiểu cách sao lưu bảng nhanh chóng. Trong SQL Server 2005,
SELECT *
INTO CustomerBackup200810032034
FROM Customer
sẽ sao chép mọi hàng từ toàn bộ bảng Khách hàng vào một bảng mới có tên là CustomerBackup200810032034, sau đó bạn có thể xóa khi đã cập nhật xong và đảm bảo rằng mọi thứ đều ổn. Nếu điều tồi tệ nhất xảy ra, việc khôi phục dữ liệu bị thiếu từ bảng này sẽ dễ dàng hơn nhiều so với việc thử khôi phục bản sao lưu của đêm qua từ đĩa hoặc băng.
Cuối cùng, hãy cảnh giác với việc xóa theo tầng loại bỏ những thứ bạn không định xóa - hãy kiểm tra các mối quan hệ của bảng và các ràng buộc chính trước khi sửa đổi bất kỳ thứ gì.