/*
Use this sql to drop all objects in a database.
*/

-- Drop all SP
declare @dropSp varchar(max)=''
select @dropSp=@dropSp+'DROP PROCEDURE '+QUOTENAME(SCHEMA_NAME(obj.schema_id))+'.'+ QUOTENAME(RTRIM(s.name)) +';'+CHAR(13)
FROM sysobjects s
left join sys.objects obj
on s.id = obj.object_id and s.name=obj.name
WHERE s.[type] = 'P' AND category = 0 ORDER BY s.[name]
--EXEC (@SQL)
Print @dropSp

go

/* Drop all views */
declare @dropViews varchar(max) =''
select @dropViews=@dropViews+'DROP VIEW '+QUOTENAME(SCHEMA_NAME(obj.schema_id))+'.'+ QUOTENAME(RTRIM(s.name)) +';'+CHAR(13)
FROM sysobjects s
left join sys.objects obj
on s.id = obj.object_id and s.name=obj.name
WHERE s.[type] = 'V' AND category = 0 ORDER BY s.[name]
--EXEC (@dropViews)
Print @dropViews
go

/* Drop all functions */
declare @dropFN varchar(max) =''

select @dropFN=@dropFN+'DROP FUNCTION '+QUOTENAME(SCHEMA_NAME(obj.schema_id))+'.'+ QUOTENAME(RTRIM(s.name)) +';'+CHAR(13)
FROM sysobjects s
left join sys.objects obj
on s.id = obj.object_id and s.name=obj.name
WHERE s.[type] IN (N'FN', N'IF', N'TF', N'FS', N'FT') AND category = 0 ORDER BY s.[name]
--EXEC (@dropFN)
Print @dropFN
go

/* Drop all Foreign Key constraints */
DECLARE @SQL VARCHAR(MAX)=''
SELECT @SQL = @SQL + 'ALTER TABLE ' + QUOTENAME(DB_NAME())+'.'+ QUOTENAME(C.TABLE_SCHEMA) + '.' + QUOTENAME(C.TABLE_NAME) + ' DROP CONSTRAINT [' + RTRIM(C.CONSTRAINT_NAME) +'];' + CHAR(13)
FROM INFORMATION_SCHEMA.TABLE_CONSTRAINTS C
WHERE C.CONSTRAINT_TYPE = 'FOREIGN KEY'
--EXEC (@SQL)
PRINT @SQL

GO
--Drop all primary key
DECLARE @SQL VARCHAR(MAX)=''
SELECT @SQL = @SQL + 'ALTER TABLE ' + QUOTENAME(DB_NAME())+'.'+ QUOTENAME(C.TABLE_SCHEMA) + '.' + QUOTENAME(C.TABLE_NAME) + ' DROP CONSTRAINT [' + RTRIM(C.CONSTRAINT_NAME) +'];' + CHAR(13)
FROM INFORMATION_SCHEMA.TABLE_CONSTRAINTS C
WHERE C.CONSTRAINT_TYPE = 'PRIMARY KEY'
--EXEC (@SQL)

PRINT @SQL
GO
/* Drop all tables */
DECLARE @SQL VARCHAR(MAX)=''

select @SQL = @SQL+'drop TABLE '+QUOTENAME(DB_NAME())+'.'+QUOTENAME(SCHEMA_NAME(obj.schema_id))+'.'+ QUOTENAME(RTRIM(s.name)) +';'+CHAR(13)
FROM sysobjects s
left join sys.objects obj
on s.id = obj.object_id and s.name=obj.name
WHERE s.[type] = 'u' AND category = 0 ORDER BY s.[name]
--EXEC (@dropViews)
Print @SQL
go

最新文章

  1. [Tool]Inno Setup创建软件安装程序。
  2. Xamarin.Android经验之谈
  3. 如何编译ReactNative示例程序Examples
  4. Scrum项目4.0
  5. 前端编码规范(2)—— HTML 规范
  6. ubuntu笔记1
  7. makefile懒人版(单个文件编译)
  8. c#中反射
  9. 19_Python元组总结
  10. composer操作简单解析
  11. 20190326-HTML5标签、CSS的引用
  12. 前端学习之HTML
  13. js根据ip自动获取地址(省市区)
  14. day 9 - 2 函数练习
  15. 好好的P2P,咋说爆就爆?
  16. 2012年蓝桥杯省赛A组c++第2题(暴力求解古堡算式)
  17. js监听页面放大缩小
  18. Jquery选择器之父节点的子节点
  19. Linux上实现Windows的SQLPlus保存SQL历史记录功能
  20. 用python实现一个简单的socket网络聊天通讯 (Linux --py2.7平台与windows--py3.6平台)

热门文章

  1. Cookie的存储、获取、删除操作
  2. CSS 基础:定位元素(3)<思维导图>
  3. Authorization With Pundit
  4. [POI2004] SZN
  5. 深入浅出 JVM GC(3)
  6. C#利用SerialPort控件进行串口编程小记
  7. VS2017进程为idXXXX 无法启动解决方案
  8. 菜鸟入门【ASP.NET Core】7:WebHost的配置、 IHostEnvironment和 IApplicationLifetime介绍、dotnet watch run 和attach到进程调试
  9. linux下如何批量杀JAVA进程或某个进程方法
  10. Ajax实现的城市二级联动二