SQL 支持迁移和更新的 DDL

SQL DDL to support migration and updates

我有一个 Web 应用程序,它仅使用基本的 ms-sql 数据库 tables 并且没有什么特别的限制。

每次我需要升级我的数据库的架构时,我都会删除旧的,然后使用带有大量创建 table 子句的标准 DDL 脚本重新创建一个新的。

是否有任何模式可以让我以这样的方式编写我的 DDL 脚本,即使它 运行 在现有数据库上它也会更新它而不会丢失所有存储的日期?

您看过 Data Tools(也称为 SSDT)吗?它是 Visual Studio 的一个插件,允许您拥有(除其他外)数据库项目。您以声明方式添加对象(即 create tablecreate procedure 等),该工具会计算出如何使目标数据库看起来像数据库项目中表示的模式。但是你还是要小心!该工具将允许您愉快地删除列、表、过程等。但是您绝对可以避免每次都删除并重新创建所有内容。