Trzy rzeczy, których nauczyłem się na własnej skórze przez lata ...
Po pierwsze, jeśli aktualizujesz lub usuwasz dane na żywo, najpierw napisz zapytanie SELECT z klauzulą WHERE, której będziesz używać. Upewnij się, że działa. Upewnij się, że jest poprawny. Następnie dołącz instrukcję UPDATE / DELETE do znanej klauzuli roboczej WHERE.
Nigdy nie chcesz
DELETE FROM Customers
siedząc w analizatorze zapytań czekając, aż napiszesz klauzulę WHERE ... przypadkowo naciśniesz „wykonaj” i właśnie zabiłeś tabelę Customer. Ups.
Ponadto, w zależności od platformy, dowiedz się, jak szybko wykonać kopię zapasową tabeli. W SQL Server 2005
SELECT *
INTO CustomerBackup200810032034
FROM Customer
skopiuje każdy wiersz z całej tabeli Customer do nowej tabeli o nazwie CustomerBackup200810032034, którą można następnie usunąć po wykonaniu aktualizacji i upewnieniu się, że wszystko jest w porządku. Jeśli wydarzy się najgorsze, o wiele łatwiej będzie przywrócić brakujące dane z tej tabeli, niż spróbować przywrócić kopię zapasową z zeszłej nocy z dysku lub taśmy.
Na koniec uważaj na usuwanie kaskadowe, pozbywając się rzeczy, których nie zamierzałeś usuwać - sprawdź relacje tabel i kluczowe ograniczenia, zanim cokolwiek zmodyfikujesz.