0

我是否有可能拥有一个数据库项目来“仅”维护一个选择性的 DB 对象或脚本列表,而不是导入整个/整个数据库?

我的任务是编写一些 3 - 4 个第三方应用程序之间的集成。这些应用程序有自己的 SQL 数据库。我所要做的就是添加一些新表,编写一些新的存储过程、触发器和 UDF。

以下是我正在寻找的东西:

用于更改控制、维护和部署此 DB 对象子集的自动化解决方案。(我已经在使用 TFS,所以源代码控制不是问题。)

这可以使用 SSDT 完成吗?

如果没有,还有其他开源选项吗?

4

1 回答 1

1

您可以这样做,但这并不是很理想/如果您可以将所有对象放在它们自己的模式中,那么它会更容易一些,但仍然有点痛苦。

我曾在类似的场景中工作过,我只是将每个人的代码都放入数据库项目中——当他们进行更新时,你会从数据库同步回你的项目,只要它不是常规的,通常就可以了。

如果您可以将所有内容放入您自己的架构中,而您真的不能将他们的代码放入您的数据库项目中,那么请使用我的过滤器并忽略他们的所有架构(https://the.agilesql.club/Blogs/Ed-Elliott/HOWTO -过滤器-Dacpac-部署

最后,如果它只是几个对象,那么我可能不会打扰 ssdt - 我使用 ssdt 的经验法则是您是否会定期更改对象或者您想要良好的验证,那么它可能不值得付出努力。

您可能注意到了其中的可能性,并非每个案例都是相同的。

抱歉有点啰嗦!

埃德

于 2017-05-19T20:19:15.680 回答