1

I want to delete all rows from a SQL Server 2005 database.

Can anyone to define a procedure to delete all rows from database easily?

marc_s
  • 732,580
  • 175
  • 1,330
  • 1,459
Umair Noor
  • 442
  • 4
  • 17

3 Answers3

1

In that case, this will work:

EXEC sp_MSForEachTable 'ALTER TABLE ? NOCHECK CONSTRAINT ALL'
GO
EXEC sp_MSForEachTable 'DELETE FROM ?'
GO
EXEC sp_MSForEachTable 'ALTER TABLE ? CHECK CONSTRAINT ALL'
GO

thankyou for all.

Umair Noor
  • 442
  • 4
  • 17
1

Use this command:

    --Disable Constraints & Triggers
    EXEC sp_MSforeachtable 'ALTER TABLE ? NOCHECK CONSTRAINT ALL'
    EXEC sp_MSforeachtable 'ALTER TABLE ? DISABLE TRIGGER ALL'
    --Perform delete operation on all table for cleanup
    EXEC sp_MSforeachtable 'DELETE ?'
    --Enable Constraints & Triggers again
    EXEC sp_MSforeachtable 'ALTER TABLE ? CHECK CONSTRAINT ALL'
    EXEC sp_MSforeachtable 'ALTER TABLE ? ENABLE TRIGGER ALL'
    --Reset Identity on tables with identity column
    EXEC sp_MSforeachtable 'IF OBJECTPROPERTY(OBJECT_ID(''?''), ''TableHasIdentity'') = 1
    BEGIN DBCC CHECKIDENT (''?'',RESEED,0) END'
Ardalan Shahgholi
  • 11,967
  • 21
  • 108
  • 144
0

Maybe this will help:

http://vadivel.blogspot.se/2006/07/easiest-fastest-way-to-delete-all.html

Lasse Edsvik
  • 9,070
  • 16
  • 73
  • 109