【发布时间】:2018-03-21 05:41:07
【问题描述】:
我们有多个正在运行的应用程序实例(应用程序 + 数据库)(Dev、Test、Prod)。
我们目前的实施过程是这样的:
- 多个数据库开发人员在同一个数据库上工作(应用程序由单独的团队开发)
- 数据库开发过程包括添加/更改数据库对象和配置应用程序对象
- 应用程序对象作为数据存储在数据库表(我们称之为内核表)中
- 数据库已连接到应用程序实例,开发人员无法在本地计算机上运行自己的应用程序实例。 (我知道这不是最好的方法,但由于各种原因,目前我们无法采取不同的做法)
我们想找出一种方法和工具(最好是免费的,或者至少不是很贵) 要在功能级别上进行版本控制,通常,一名开发人员致力于一项功能。最后,特征通常是一些数据库对象(表、视图、存储过程)和插入到内核(应用程序)表中的数据。开发者不控制应用程序输入的数据。
内核表通常具有自动递增的主键,以及一些依赖项,例如其他内核表上的外键。
最终目标是建立持续集成流程。这意味着我们希望有一个自动化的过程来进行一些测试并将我们的功能填充到其他环境中。
我们同时使用 SQL Server 2014 和 Azure SQL 数据库。
你有什么经验/想法如何处理这种情况?
谢谢
【问题讨论】:
-
我很想知道人们在 SQL Server 上使用什么。 Visual Studio 有一些内置工具,但我从来没有机会在 SQL Server 上试用它,而且它不适用于 Oracle。
-
我不确定这是否会作为“推荐工具”类型的帖子关闭。
标签: sql sql-server versioning