我和我的团队正在开发一个SQL Server数据库。我们希望在不同的PC上工作,但使用相同的数据库。是否有可能我们可以在每台PC上同步我们的工作,或者以某种方式工作时共享我们的数据库?
如果可能,Team Foundation服务器如何用于此?
答案 0 :(得分:0)
如果您只关心架构更改(而不是数据更改),则可以使用visual studio的SQL Server项目和源控制系统来帮助管理。然后,您可以使用“架构比较”工具将项目与服务器,服务器与项目或服务器与服务器进行比较。
Redgate等公司的一些工具允许这个过程实现自动化。我没有使用过这些,但它们可能是另一种选择。
答案 1 :(得分:0)
您可以使用SQL Server Database Tools (SSDT)将数据库表示为一系列脚本。然后可以将这些脚本添加到源代码管理中。 Git是目前最流行的源代码控制系统,Team Foundation Server和Visual Studio Team Services有great Git support。
每个开发人员都会在自己的计算机上使用Visual Studio(或VS Code)来完成数据库工作。当开发人员想要共享他们的更改时,他们会将它们提交给源代码控制。然后,其他开发人员可以使用新更改更新其本地版本的代码。 SSDT增加了对同步数据库和数据库项目的支持。
现在您的代码处于源代码管理中,您可以更进一步,使用VSTS构建和发布管理添加持续集成构建和自动部署等功能。这样,您可以在部署到测试和生产环境之前自动测试数据库更改,甚至运行单元和集成测试。
以下Channel9视频介绍了这些工具:Database Continuous Integration and Deployment with Visual Studio SQL Server Data Tools in < 10 minutes