创建没有安装本地SQL的数据库项目

时间:2013-05-24 20:17:54

标签: c# visual-studio-2012 sql-server-2012 database-project

我可能完全没有这个,但有没有办法让数据库项目指向远程服务器?我的理由是我们有一个共享的DEV数据库供开发使用,对于每个开发人员来说,拥有SQL Server的本地实例似乎也有些过分。是否存在可以设置或修改以指向远程服务器的连接字符串,或者是您可以使数据库项目在计算机上拥有本地实例的唯一方法。如果我提出的问题没有意义,请告诉我。

谢谢!

2 个答案:

答案 0 :(得分:0)

SQL Server数据工具(您正在使用的数据库项目)可以通过两种方式工作:

  1. Connected Database mode
  2. Project oriented, offline database mode
  3. 如果你看一下这些文章。您将看到,出于开发目的,在两种情况下都需要localdb实例。本地服务器是一个有限的SQL Server Express安装,默认情况下与Data Tools一起提供。所以你需要做的就是安装数据工具。如果您已经这样做了,那么您就拥有了localdb支持。 有关MSDN的更多信息:

      

    Microsoft SQL Server 2012提供本地按需服务器实例,   称为SQL Server Express本地数据库运行时,已激活   当您调试SQL Server数据库项目时。这个本地服务器   instance可以用作构建,测试和调试的沙箱   你的项目。它独立于任何已安装的SQL Server   实例,并且无法在SQL Server数据工具(SSDT)之外访问。

    中央开发数据库的工作流程为:

    • 创建数据库项目并将其分发给每个开发人员。
    • 开发人员“脱机”工作,并在数据库中添加/删除对象。
    • 在将更改提交到源代码管理之前,每个开发人员还会将本地数据库更改与中央开发数据库同步。
    • 团队的其他成员从源代码​​管理中获取更改,因此无需手动同步。只需要一个新的localdb发布。

    当然,还有许多其他事情需要考虑:本地数据(请参阅here关于将数据复制到真实数据库),以及localdb不支持的一些功能(如全文搜索)。

    如果你学会控制它,我已经尝试过这个流程并且效果很好。您始终可以获得一致的中央开发数据库,​​无需中介和不稳定的修改。

答案 1 :(得分:0)

您可以将“Debug”属性更改为指向与(localdb)实例不同的服务器。大多数情况下,除非您使用(localdb)中不支持的某些功能,否则不会执行此操作。这样您就可以在每个调试版本中将更改推送到中央服务器。但是,如果你只是玩游戏,这可能会产生很多意想不到的后果。更好的选择是单独保留(localdb)调试实例,并为真正的“本地”SQL Server安装和共享开发服务器设置发布配置文件。这样,您可以脱机完成所有开发工作,并且只有在准备好时才将更改推送到共享开发服务器。

我在博客上发表了一系列关于SSDT的博客文章可能会有所帮助:http://schottsql.blogspot.com。我还建议在http://sqlblog.com查看Jamie Thomson的博客 - 他有很多关于DB和SQL项目的提示,可能会有所帮助。