Visual Studio vs SQL Server Management Studio - Su selección


Solo para el prefacio: Trabajo en una pequeña empresa que hace ASP.NET desarrollo y utiliza SQL Server 2005 para todas nuestras necesidades de base de datos.

Tenía curiosidad por saber cuáles eran los pros y los contras de usar Visual Studio o SQL Server Management Studio para nuestro desarrollo en el lado de la base de datos (es decir, creación de tablas, escritura de procedimientos almacenados, etc.).).

Ahora mismo realizamos todas nuestras tareas de base de datos dentro de Management Studio y me preguntaba si había algún beneficio al usar Visual Estudio en su lugar. Sería más fácil hacer un seguimiento de los cambios de procedimiento y otras modificaciones a la base de datos (ya sea a través de Visual Studio en sí o a través de algún tipo de control de código fuente (planeamos implementar subversion pronto).

Personalmente no tengo problemas para trabajar con Management Studio, pero si fuera más eficiente y más controlable a través de Visual Studio de maneras con las que simplemente no estoy familiarizado, me encantaría escucharlo.

EDITAR : Solo quería señalar que mis entornos de desarrollo específicos son SQL Sever 2005, Visual Studio 2005 Professional Edition y Visual Studio Team System 2008 Development Edition. No tenemos team foundation server ni ningún otro extra funcionando o instalado.

Author: Dylan Corriveau, 2009-01-17

6 answers

Mi método personal es usar SQL MS para todas las cosas relacionadas con el diseño (diseño de esquemas, diagramas, claves, índices, etc.), pero para crear todos mis procedimientos almacenados, funciones y similares en Visual Studio en un proyecto de "Base de datos" adjunto a mi solución mainly principalmente porque me permite mantener el procs mejor controlado de esa manera (ya que generalmente cambian más a menudo que el esquema), y me parece particularmente útil usar los menús contextuales en VS para ejecutar el procs en mi prueba y puesta en escena máquinas directamente, ya que lo hago tan a menudo.

 10
Author: Christian Nunciato,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2009-01-17 17:39:06

IMHO una gran ventaja de usar management studio es "script as". Que yo sepa no hay equivalente en VS.

 9
Author: GregD,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2009-01-17 17:26:45

Utilicé Management Studio para todo el trabajo SQL anterior, pero últimamente he encontrado que el administrador SQL interno de Visual Studio también es bastante bueno. Lo estoy usando cada vez más para ejecutar comprobaciones de consultas rápidas y modificaciones al esquema de la base de datos.

Tiene una gran característica de sangría SQL, y me ha resultado muy útil. En mi opinión, es mejor que el color SQL de Management studio.

 3
Author: Cyril Gupta,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2009-01-17 17:37:08

Visual Studio 2010 ha hecho algunas actualizaciones bastante agradables a los proyectos y soluciones de SQL Server. Lea más aquí:

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

 3
Author: LWoodyiii,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-06-06 00:42:12

Esa es una pregunta difícil. Supongo que dependerá de lo que estés haciendo. Si estás construyendo DALs y esas cosas, probablemente sería más fácil usar VS, ya que hay una buena integración (arrastrar y soltar, etc.).). VS es probablemente adecuado para el 95% de su actividad diaria de db.

Pero como alguien ya mencionó, no obtienes el "Script Como ayudantes" (que uso todo el tiempo). Tampoco obtendrá mucho (si acaso) en el camino de las herramientas de administración de usuarios (inicios de sesión, etc.). Y hasta ahora como sé, no hay forma de administrar índices a través de Visual Studio. Tampoco obtiene nada con respecto a la importación/exportación de datos.

 2
Author: alex,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2009-01-17 17:31:57

Para mí Data Dude (también conocido como Database Edition de Visual Studio 2008 Team System) ha sido un gran cambio en términos de hacer las mismas cosas que su pregunta aborda: mantener "un seguimiento de los cambios de procedimiento y otras modificaciones a la base de datos."No solo su equipo en su conjunto puede realizar un seguimiento de los cambios entre varios entornos compartidos, sino que, a través del control de origen, cada miembro del equipo puede realizar un seguimiento de sus propias diferencias en relación con todos los entornos compartidos. Esto hace que el código de la base de datos realmente código, con todos los beneficios asociados.

Además, es muy fácil conciliar las diferencias entre las bases de datos y hacer que la herramienta genere automáticamente el código que reconciliaría esas diferencias. Idealmente, el código de la base de datos se liberaría directamente fuera del control de código fuente, al igual que ASP.NET el código normalmente se haría. Data Dude disminuye en gran medida el esfuerzo para lograr esta paridad.

El único negativo es el costo: Data Dude requiere una actualización al Sistema Team para aquellos en Visual Studio Pro. Afortunadamente, evidentemente Microsoft va a rodar esta funcionalidad en la edición" Desarrollador " de Visual Studio 2010, que presumiblemente tendrá precios similares a Visual Studio 2008 Pro.

 1
Author: Perry Tribolet,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2009-01-17 17:28:34