我们有一个产品使用多个带有触发器的 SQL Server 2005 数据库。我们正在寻找一种可持续的解决方案,用于在客户服务器上部署和升级数据库模式。
目前,我们正在使用 Red Gate 的 SQL Packager,这对于这项特定工作来说似乎是错误的工具。不仅 SQL Packager 似乎面向单个数据库,而且我们拥有的特定(旧)版本在 SQL Server 2005 上存在一些问题。(我们的 SQL Packager 版本在 SQL Server 2000 上运行良好,尽管我们必须做一个很多变通方法使它能够处理带有触发器的多个数据库。)
有人可以推荐一个可以创建 EXE 或 .NET 项目的产品来执行以下操作吗?
* Create a main database with some default data.
* Create an audit trail database.
* Put triggers on the main database so audit data will automatically be inserted into the audit trail database.
* Create a secondary database that has nothing to do with the main database and audit trail database.
然后,当客户需要更新他们的数据库模式时,产品可以查看原始数据库集和我们服务器上更新的数据库集之间的变化。然后产品可以创建一个 EXE 或 .NET 项目,该项目可以在客户的服务器上...
* Temporarily drop triggers on the main database so alterations can be made.
* Alter database schemas, triggers, stored procedures, etc. on any of the original databases, while leaving the customer's data alone.
* Put the triggers back on the main database.
基本上,我们正在寻找一种类似于 SQL Packager 的产品,但它可以轻松处理多个数据库。如果不存在这样的产品,我们将不得不自己制造。
提前感谢您的建议!