Visual Studio与SQL Server Management Studio比较 - 你会选择哪一个?

25

首先声明:我在一家小公司工作,从事ASP.NET开发,并且我们所有的数据库需求都使用SQL Server 2005。

我很好奇使用Visual Studio还是SQL Server Management Studio进行数据库方面的开发(例如表格创建,存储过程编写等)有什么优缺点。

目前我们在Management Studio中执行所有的数据库任务,我想知道使用Visual Studio是否有一些好处。比如,它是否可以更容易跟踪过程更改和其他对数据库的修改(无论是通过Visual Studio本身还是通过某种源控制(计划很快实施子版本控制))。

我个人没有使用Management Studio的问题,但如果使用 Visual Studio 可以更高效、更可控,而且我只是不熟悉的话,我非常愿意听听您的想法。

编辑:我想注意的是,我的具体开发环境是SQL Sever 2005、Visual Studio 2005专业版和Visual Studio Team System 2008开发版。我们没有团队基础架构服务器或任何其他额外运行或安装的东西。

6个回答

10

我的个人方法是使用SQL MS来处理所有与设计相关的事情(模式设计、图表、键、索引等),但将所有存储过程、函数等制作在“数据库”项目中的Visual Studio中 - 主要是因为这样可以更好地进行版本控制(因为我发现它们通常比模式更容易改变),而且我发现在VS的上下文菜单中直接在我的测试和预备机器上运行存储过程非常方便,因为我经常这样做。


1
使用数据库项目来跟踪我的存储过程的想法,绝对是我希望在 Visual Studio 中更加方便的事情。 - TheTXI

9

在我看来,使用管理工具的一个巨大优势是“生成脚本”。据我所知,Visual Studio中没有相应的功能。


4

3

我之前一直使用Management Studio进行所有的SQL工作,但最近发现Visual Studio内置的SQL管理器也很不错。我现在越来越多地使用它来运行快速查询检查和对数据库方案进行修改。

它还有一个很棒的SQL缩进功能,我发现这非常有帮助。在我看来,它比Management Studio的SQL着色功能更好。


2

这是一个很难回答的问题。我猜这取决于你具体在做什么。如果你正在构建数据访问层(DAL)等内容,使用VS可能会更容易,因为有一些不错的集成功能(拖放等)。对于你日常数据库活动的95%,VS可能已经足够了。

但正如其他人已经提到的,你没有“Script As”助手(我一直在使用),也不会得到太多关于用户管理工具(登录等)的帮助。据我所知,没有办法通过Visual Studio管理索引。你也无法获得任何有关导入/导出数据的信息。


截至2018年(我刚刚浏览了文档,它没有任何发布日期),Visual Studio支持索引创建(请参见:https://dev.mysql.com/doc/visual-studio/en/visual-studio-editing-tables-indexes.html) - Anwar

1
对我来说,Data Dude(即Visual Studio 2008 Team System的数据库版本)在处理您提出的问题方面是一个重大的游戏变革者:跟踪过程更改和其他对数据库的修改。不仅可以让整个团队跟踪各种共享环境之间的变化,而且通过源代码控制,每个团队成员都可以跟踪他或她自己相对于所有共享环境的差异。这使得数据库代码真正成为代码,并带来了所有相关的好处。
此外,很容易协调不同数据库之间的差异,并让工具自动生成协调这些差异的代码。理想情况下,数据库代码应该直接从源代码控制中发布,就像ASP.NET代码通常会做的那样。 Data Dude极大地减少了实现这种平衡所需的工作量。
唯一的负面因素是成本:对于使用Visual Studio Pro的人来说,Data Dude需要升级到Team System。幸运的是,显然微软将把这个功能纳入Visual Studio 2010“开发人员”版中,这个版本的定价可能与Visual Studio 2008 Pro类似。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接