24

前言:我在一家从事 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 开发版。我们没有运行或安装团队基础服务器或任何其他附加功能。

4

6 回答 6

10

我个人的方法是对所有与设计相关的东西(模式设计、图表、键、索引等)使用 SQL MS,但在“数据库”项目中的 Visual Studio 中制作我所有的存储过程、函数等附加到我的解决方案 - 主要是因为它让我可以更好地保持 procs 的版本控制(因为我发现它们通常比架构更频繁地更改),而且我发现使用 VS 中的上下文菜单来运行 procs 特别方便直接在我的测试和登台机器上,因为我经常这样做。

于 2009-01-17T17:39:06.103 回答
9

恕我直言,使用管理工作室的一大优势是“脚本为”。据我所知,VS 中没有等价物。

于 2009-01-17T17:26:45.677 回答
4

Visual Studio 2010 对 SQL Server 项目和解决方案进行了一些相当不错的升级。在这里阅读更多:

https://web.archive.org/web/20160407003056/http://leonardwoody.com/2011/08/27/introduction-to-visual-studio-database-management/

于 2011-08-27T20:08:21.027 回答
3

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

它有一个很棒的 SQL 缩进功能,我发现它非常有用。在我看来,它胜过 Management Studio 的 SQL 着色。

于 2009-01-17T17:37:08.277 回答
2

这是一个很难的问题。我想这完全取决于你在做什么。如果您正在构建 DAL 和其他东西,使用 VS 可能会更容易,因为有一些很好的集成(拖放等)。VS 可能足以满足您每天 95% 的数据库活动。

但是正如有人已经提到的那样,您没有得到“脚本作为”助手(我一直使用它)。在用户管理工具(登录等)方面,您也不会得到太多(如果有的话)。据我所知,没有办法通过 Visual Studio 管理索引。关于导入/导出数据,您也一无所获。

于 2009-01-17T17:31:57.210 回答
1

对我而言,Data Dude(又名 Visual Studio 2008 Team System 的数据库版)在完成您的问题所针对的事情方面是一个重大的游戏规则改变者:保持“跟踪过程更改和对数据库的其他修改”。您的团队不仅可以作为一个整体跟踪各种共享环境之间的变化,而且通过源代码控制,每个团队成员都可以跟踪他或她自己相对于所有共享环境的差异。这使得数据库代码成为真正的代码,并具有所有随之而来的好处。

此外,协调数据库之间的差异并让该工具自动生成协调这些差异的代码是一件轻而易举的事。理想情况下,数据库代码将在源代码控制之外直接发布,就像 ASP.NET 代码通常会这样做一样。Data Dude 大大减少了实现这种平等的努力。

一个负面因素是成本:Data Dude 需要为 Visual Studio Pro 上的用户升级到 Team System。幸运的是,很明显微软将把这个功能加入到 Visual Studio 2010 的“开发者”版中,它的定价可能与 Visual Studio 2008 Pro 相似。

于 2009-01-17T17:28:34.643 回答