sql >> Database teknologi >  >> RDS >> Sqlserver

Hvordan sletter man alle rækker fra alle tabeller i en SQL Server-database?

Bemærk, at TRUNCATE ikke virker, hvis du har nogen referenceintegritet indstillet.

I så fald vil dette virke:

EXEC sp_MSForEachTable 'DISABLE TRIGGER ALL ON ?'
GO
EXEC sp_MSForEachTable 'ALTER TABLE ? NOCHECK CONSTRAINT ALL'
GO
EXEC sp_MSForEachTable 'SET QUOTED_IDENTIFIER ON; DELETE FROM ?'
GO
EXEC sp_MSForEachTable 'ALTER TABLE ? WITH CHECK CHECK CONSTRAINT ALL'
GO
EXEC sp_MSForEachTable 'ENABLE TRIGGER ALL ON ?'
GO

Rediger:For at gøre det klart, ? i sætningerne er en ? . Det er erstattet med tabelnavnet af sp_MSForEachTable procedure.



  1. Skinner 4 felttype til multiselect med foruddefinerede værdier

  2. Online skemaopgradering i MySQL Galera Cluster ved hjælp af RSU-metoden

  3. Introduktion til Row-Level Security i SQL Server

  4. Indsæt flere værdier ved hjælp af INSERT INTO (SQL Server 2005)