valor una tabla stored retorno retornar resultado procedimiento parametros obtener guardar entrada ejecutar devolver datos con almacenado sql-server sql-server-2008 debugging

sql-server - una - procedimiento almacenado sql server insert



Depuración del procedimiento almacenado en SQL Server 2008 (5)

¿Hay alguna forma de depurar un procedimiento almacenado en SQL Server 2008?

Tengo acceso para utilizar SQL Server Management Studio 2008 y Visual Studio 2008 (no estoy seguro de si alguno de estos proporciona esta funcionalidad).

En general, utilizo el generador de perfiles SQL para encontrar los parámetros pasados ​​al proceso almacenado, pero me gustaría poder seguir el procedimiento para ver dónde está fallando.

es posible?

¿Cuál es la mejor manera? (en términos de encontrar rápidamente la ubicación de los errores)


Bueno, la respuesta fue estar sentado frente a mí todo el tiempo.

En SQL Server Management Studio 2008, hay un botón de depuración en la barra de herramientas. Establezca un punto de interrupción en una ventana de consulta para avanzar.

Descarté esta funcionalidad al principio porque no pensé en entrar INTO en el procedimiento almacenado, lo cual puede hacer con facilidad.

SSMS básicamente hace lo que FinnNK menciona con el tutorial de MSDN, pero de forma automática.

¡Tan fácil! Gracias por su ayuda FinnNK.

Editar: debería agregar un paso para encontrar la llamada al procedimiento almacenado con los parámetros. Utilicé el Analizador de SQL en mi base de datos.



Sí, puedes (siempre que tengas al menos la versión profesional de Visual Studio), aunque requiere un poco de configuración una vez que hayas hecho esto, no es muy diferente del código de depuración. MSDN tiene un tutorial básico .



  • Sí, aunque puede ser complicado lograr que la depuración funcione, especialmente si intenta depurar SQL en un servidor SQL remoto desde su propia máquina de desarrollo.
  • En la primera instancia, recomendaría que esto funcione depurando directamente en el servidor primero, si es posible.
  • Inicie sesión en el servidor SQL utilizando una cuenta que tenga derechos de administrador del sistema o solicite a su DBA que lo haga.
  • Luego, para su propia cuenta de Windows, cree un ''inicio de sesión'' en SQL Server, si aún no está allí:
  • Haga clic con el botón derecho en la cuenta> propiedades: asegúrese de que el inicio de sesión sea miembro de la función ''sysadmin'':
  • (también asegúrese de que la cuenta sea ''propietaria'' de las bases de datos que desee para depurar las secuencias de comandos (por ejemplo, procs almacenados) para:
  • Luego, inicie sesión directamente en el servidor SQL usando su cuenta de Windows.
  • Inicie sesión en el servidor SQL utilizando la Autenticación de Windows (usando la cuenta que acaba de utilizar para iniciar sesión en el servidor)
  • Ahora ''Depurar'' la consulta en SQL Management Studio, estableciendo puntos de interrupción según sea necesario. Puede acceder a los procesos almacenados usando F11:
  • Aquí hay una guía útil para la depuración:

http://blogs.msdn.com/b/billramo/archive/2009/04/11/transact-sql-debugger-for-sql-server-2008-part-1.aspx

  • Si necesita depurar de forma remota, una vez que tenga esta parte funcionando, puede intentar configurar la depuración remota:

http://blogs.msdn.com/b/billramo/archive/2009/04/11/transact-sql-debugger-for-sql-server-2008-part-2.aspx