SQL完全空数据库

cor*_*ews 8 sql sql-server sql-server-2005

我正在编写一个安装脚本,安装所有表,存储过程,视图,全文索引,用户等.

如果用户具有所有正确的权限并且脚本从头到尾运行,则一切正常.但是,如果脚本在某个中途死亡,那么它就不能再次运行了.

为了实现这一点,我希望基本上将数据库返回到"全新"状态,在该状态下它没有任何内容.

我意识到如何自己删除每个表/ sp/view ..但我正在寻找一种更通用的方法来重置数据库.

我还需要能够删除全文目录和用户.

谢谢你的帮助.

运行SQL Server 2005

Rob*_*Day 7

您是否可以在事务中运行整个脚本,然后在失败时调用回滚?

CREATE TABLE可以像INSERT/UPDATE一样轻松地回滚.


Dav*_*und 5

听起来像Drop Database的工作:

-- SQL Server Syntax  
DROP DATABASE [ IF EXISTS ] { database_name | database_snapshot_name } [ ,...n ] [;]
Run Code Online (Sandbox Code Playgroud)