Jak usunąć wszystkie rekordy w SQL Server 2008?
sql
sql-server-2008
kaveh
źródło
źródło
Odpowiedzi:
Aby usunąć wszystkie rekordy z tabeli bez usuwania tabeli.
DELETE FROM table_name
używaj ostrożnie, nie można cofnąć!Aby usunąć tabelę
DROP TABLE table_name
źródło
ze stołu?
Możesz tego użyć, jeśli nie masz kluczy obcych do innych tabel
truncate table TableName
lub
delete TableName
jeśli chcesz wszystkie stoły
sp_msforeachtable 'delete ?'
źródło
Użyj instrukcji DELETE
Delete From <TableName>
Na przykład:
Delete from Student;
źródło
Widzę, że inne odpowiedzi przedstawione powyżej są prawidłowe, ale ułatwię ci życie.
Stworzyłem nawet dla ciebie przykład. Dodałem kilka wierszy i chcę je usunąć.
Musisz kliknąć tabelę prawym przyciskiem myszy i jak pokazano na rysunku Tabela skryptów a> Usuń do> Nowe okna edytora zapytań:
Następnie otworzy się kolejne okno ze skryptem. Usuń wiersz „gdzie”, ponieważ chcesz usunąć wszystkie wiersze. Następnie kliknij Wykonaj.
Aby upewnić się, że zrobiłeś to prawym przyciskiem myszy, kliknij tabelę prawym przyciskiem myszy i kliknij „Wybierz 1000 pierwszych wierszy”. Wtedy widać, że zapytanie jest puste.
źródło
Jeśli chcesz zresetować swój stół, możesz to zrobić
truncate table TableName
truncate wymaga uprawnień i nie możesz go używać, jeśli twoja tabela ma zależności (inne tabele, które mają FK twojej tabeli,
źródło
Na jeden stół
truncate table [table name]
Do wszystkich stołów
EXEC sp_MSforeachtable @command1="truncate table ?"
źródło
Gdy tabela jest bardzo duża, lepiej jest usunąć samą tabelę za pomocą
drop table TableName
i ponownie ją utworzyć, jeśli ma się zapytanie do tworzenia tabeli; zamiast usuwać rekordy jeden po drugim, używającdelete from
instrukcji, ponieważ może to być czasochłonne.źródło