Delete all data in SQL Server database

前端 未结 10 1053
粉色の甜心
粉色の甜心 2020-12-04 05:11

How I can delete all records from all tables of my database? Can I do it with one SQL command or I need for one SQL command per one table?

10条回答
  •  攒了一身酷
    2020-12-04 05:48

    Below a script that I used to remove all data from an SQL Server database

    ------------------------------------------------------------
    /* Use database */ 
    -------------------------------------------------------------
    
    use somedatabase;
    
    GO
    
    ------------------------------------------------------------------
    /* Script to delete an repopulate the base [init database] */
    ------------------------------------------------------------------
    
    -------------------------------------------------------------
    /* Procedure delete all constraints */ 
    -------------------------------------------------------------
    
    IF EXISTS (SELECT name  
               FROM  sysobjects 
               WHERE name = 'sp_DeleteAllConstraints' AND type = 'P')
        DROP PROCEDURE dbo.sp_DeleteAllConstraints
    GO
    
    CREATE PROCEDURE sp_DeleteAllConstraints
    AS
        EXEC sp_MSForEachTable 'ALTER TABLE ? NOCHECK CONSTRAINT ALL'
        EXEC sp_MSForEachTable 'ALTER TABLE ? DISABLE TRIGGER ALL'
    GO
    
    -----------------------------------------------------
    /* Procedure delete all data from the database */ 
    -----------------------------------------------------
    
    IF EXISTS (SELECT name  
               FROM  sysobjects 
               WHERE name = 'sp_DeleteAllData' AND type = 'P')
        DROP PROCEDURE dbo.sp_DeleteAllData
    GO
    
    CREATE PROCEDURE sp_DeleteAllData
    AS
        EXEC sp_MSForEachTable 'DELETE FROM ?'
    GO
    
    -----------------------------------------------
    /* Procedure enable all constraints */ 
    -----------------------------------------------
    
    IF EXISTS (SELECT name  
               FROM  sysobjects 
               WHERE name = 'sp_EnableAllConstraints' AND type = 'P')
        DROP PROCEDURE dbo.sp_EnableAllConstraints
    GO
    -- ....
    -- ....
    -- ....
    

提交回复
热议问题