寻找数据库项目的替代方案

时间:2010-05-27 13:33:21

标签: visual-studio visual-studio-2008 database-project

我有一个相当大的数据库项目,其中包含九个数据库和一个具有相当大模式的数据库。

这个项目需要花费大量时间来构建,我即将拔掉头发。我们希望保持我们的数据库源控制,但在签入之前很难让其他开发人员使用该项目并构建数据库项目,因为构建需要很长时间。

这严重削弱了我们的工作,所以我正在寻找替代方案。也许Redgate的SQL Compare可以做些什么?我想也许这里唯一的缺点是它不验证语法?任何人的想法/建议都会非常感激。

2 个答案:

答案 0 :(得分:2)

请考虑尝试SQL Source Control,这是一种旨在与SQL Compare一起工作的产品,作为数据库开发生命周期的一部分。它目前处于测试阶段,但功能齐全,而且非常接近完整版本。

http://www.red-gate.com/products/SQL_Source_Control/index.htm

与Visual Studio构建当前数据库项目所花费的时间相比,我们有兴趣了解它在提交时的执行情况。你真的需要在VS中经常构建项目,这是一个问题吗?您的架构有多大,平均构建时间有多长?

答案 1 :(得分:0)

保持开发/实时数据库同步:

可能有很多方法可以做到这一点,我相信其他用户会进一步扩展(包括软件解决方案)。

在我的情况下,我使用双重方法:

(a)运行脚本以获得db(存储过程,表,字段等)之间的差异

(b)保持严格的数据库更改日志(不是数据更改)

在我的情况下,我随着时间的推移建立了一个半结构化的日志:

Client_Details                  [Alter][Table][New Field]
{
    EnforcePasswordChange;
}

Users                       [Alter][Table][New Field]
{
    PasswordLastUpdated;
}

P_User_GetUserPasswordEnforcement           [New][Stored Procedure]
P_User_UpdateNewPassword                [New][Stored Procedure]
P_User_GetCurrentPassword               [New][Stored Procedure]
P_Doc_BulkDeArchive                     [New][Stored Procedure]

忽略标签,降价已经搞砸了。

但是你得到了一般的要点。

我发现99%的时间都是我需要的日志。