データベースのデータを削除します.
1646 ワード
1.データベースのレコードを削除します(ストレージ中のコード):
2、データベース内のすべてのテーブルを削除します(ストレージ中):
ref: http://stackoverflow.com/questions/3372213/how-to-delete-or-truncate-table-in-sql-server
ALTER PROCEDURE USP_ClearAllCurrentDB
AS
begin
EXEC sp_MSForEachTable 'ALTER TABLE ? NOCHECK CONSTRAINT ALL'
EXEC sp_MSForEachTable 'ALTER TABLE ? DISABLE TRIGGER ALL'
EXEC sp_MSForEachTable 'DELETE FROM ?'
EXEC sp_MSForEachTable 'ALTER TABLE ? CHECK CONSTRAINT ALL'
EXEC sp_MSForEachTable 'ALTER TABLE ? ENABLE TRIGGER ALL'
end
2、データベース内のすべてのテーブルを削除します(ストレージ中):
SET NOCOUNT ON
-- .
declare cur cursor for
select 'alter table ['+ object_name(parent_obj) + ' ] drop constraint [' + name + '] ' from sysobjects where xtype = 'F'
open cur
declare @cur nvarchar(4000)
fetch next from cur into @cur
while @@fetch_status = 0
begin
exec(@cur)
fetch next from cur into @cur
end
close cur
deallocate cur
-- .
declare @T_Name nvarchar(4000)
set @T_Name = ''
select @T_Name = @T_Name +name +',' from sysobjects where xtype = 'U'
select @T_Name = 'drop table '+ left(@T_Name,len(@T_Name) - 1) -- @T_Name ',' .
exec(@T_Name)
ref: http://stackoverflow.com/questions/3372213/how-to-delete-or-truncate-table-in-sql-server