SQL完全清空数据库

标签 sql sql-server sql-server-2005

我正在编写一个安装脚本,用于安装所有表、存储过程、 View 、全文索引、用户等。

如果用户拥有所有正确的权限并且脚本从头到尾运行,则一切正常。但是,如果脚本在中途某个地方终止,则无法再次运行它。

为了实现这一点,我基本上希望将数据库返回到一个“全新”状态,其中什么都没有。

我知道如何单独删除每个表/sp/ View ..,但我正在寻找一种更通用的方法来重置数据库。

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

感谢您的帮助。

运行 SQL Server 2005

最佳答案

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

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

关于SQL完全清空数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1105067/

相关文章:

mysql - 数据库设计: Storing previous version versus storing first version in version control systems

sql - 从 Access Access Azure SQL 数据库(无端口 1433)

php - SQL如果随机结果的值小于X,则返回更多随机结果,直到达到X值?

sql-server - 存储过程将希伯来字符插入 NVARCHAR 列,但 SELECT 显示 "?"

sql - UNION 与 CROSS APPLY 性能

sql - 如何将行数据作为列查询?

mysql - 如何选择条件存储在表中的mysql行?

sql-server - Select 语句 - 仅当条件

c# - SELECT 和 UPDATE 表,因此没有线程重叠

sql-server - 将 sp_executesql 与 params 一起使用会提示需要声明变量