我正在编写一个安装脚本,用于安装所有表、存储过程、 View 、全文索引、用户等。
如果用户拥有所有正确的权限并且脚本从头到尾运行,则一切正常。但是,如果脚本在中途某个地方终止,则无法再次运行它。
为了实现这一点,我基本上希望将数据库返回到一个“全新”状态,其中什么都没有。
我知道如何单独删除每个表/sp/ View ..,但我正在寻找一种更通用的方法来重置数据库。
我还需要能够删除全文目录和用户。
感谢您的帮助。
运行 SQL Server 2005
最佳答案
您可以在事务中运行整个脚本,然后在失败时调用回滚吗?
CREATE TABLE 可以像 INSERT/UPDATE 一样轻松回滚。
关于SQL完全清空数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1105067/