Compartir vía


Ejecutar el depurador de Transact-SQL

Se aplica a: SQL Server

Puede iniciar el depurador de Transact-SQL después de abrir una ventana del Editor de consultas del motor de base de datos. Puede configurar opciones para personalizar cómo se ejecuta el depurador y ejecutar el código de Transact-SQL en modo de depuración hasta que detenga el depurador.

Iniciar y detener el depurador

Los requisitos para iniciar el depurador de Transact-SQL son los siguientes:

  • Si el Editor de consultas del motor de base de datos está conectado a una instancia del motor de base de datos en otro equipo, debe configurar el depurador para la depuración remota. Para obtener más información, vea Configurar reglas de firewall antes de ejecutar el depurador de Transact-SQL.

  • La ventana del Editor de consultas de Motor de base de datos se debe conectar mediante el uso de un inicio de sesión de autenticación de Windows o de autenticación de SQL Server que sea miembro del rol fijo de servidor sysadmin.

  • La ventana del Editor de consultas del Motor de base de datos debe estar conectada a una instancia del Motor de base de datos de SQL Server. No puede ejecutar el depurador cuando la ventana del Editor de consultas esté conectada a una instancia cuyo modo sea de usuario único.

Recomendamos depurar el código Transact-SQL en un servidor de prueba, no en un servidor de producción, por las siguientes razones:

  • La depuración es una operación con muchos privilegios. Por consiguiente, solo los miembros del rol fijo de servidor sysadmin pueden depurar en SQL Server.

  • Las sesiones de depuración se suelen ejecutar durante períodos de tiempo prolongados mientras se investiga el funcionamiento de varias instrucciones Transact-SQL. Los bloqueos, como los bloqueos de actualización, que adquiere la sesión se pueden mantener durante períodos prolongados, hasta que finalice la sesión o se confirme o revierta la transacción.

Al iniciarse el depurador de Transact-SQL, la ventana del Editor de consultas se pone en el modo de depuración. Cuando la ventana del Editor de consultas entra en el modo de depuración, el depurador se detiene en la primera línea de código. Luego, puede recorrer el código, detener la ejecución en instrucciones Transact-SQL específicas y usar las ventanas del depurador para ver el estado de ejecución actual. Puede iniciar el depurador seleccionando el botón Depurar de la barra de herramientas Consulta o la opción Iniciar depuración del menú Depurar.

La ventana del Editor de consultas permanece en estado de depuración hasta que finalice la última instrucción de dicha ventana o se detenga el modo de depuración. Puede detener el modo de depuración y la ejecución de la instrucción mediante uno de los siguientes métodos:

  • En el menú Depurar, seleccione Detener depuración.

  • En la barra de herramientas Depurar, seleccione el botón Detener depuración.

  • En el menú Consulta, seleccione Cancelar ejecución de la consulta.

  • En la barra de herramientas Consulta, seleccione el botón Cancelar ejecución de la consulta.

También puede detener el modo de depuración y dejar que finalice la ejecución del resto de las instrucciones Transact-SQL seleccionando la opción Desasociar todo del menú Depurar.

Controlar el depurador

Puede controlar el funcionamiento del depurador de Transact-SQL usando los siguiente comandos de menú, barras de herramientas y accesos directos:

  • El menú Depurar y la barra de herramientas Depurar . Tanto el menú Depurar como la barra de herramientas Depurar están inactivos hasta que el foco se coloque en una ventana abierta del Editor de consultas. Permanecen activas hasta que se cierre el proyecto actual.

  • Los métodos abreviados de teclado del depurador.

  • El menú contextual de Editor de consultas. El menú contextual se muestra cuando se hace clic con el botón secundario en una línea de una ventana del Editor de consultas. Cuando esta ventana esté en el modo de depuración, el menú contextual muestra los comandos del depurador que se aplican a la línea o cadena seleccionadas.

  • Los elementos de menú y los comandos contextuales de las ventanas que abre el depurador, como las ventanas Inspección o Puntos de interrupción .

La siguiente tabla muestra los comandos de menú, los botones de las barras de herramientas y los métodos abreviados de teclado del depurador.

Comando del menú Depurar Comando de método abreviado del editor Botón de la barra de herramientas Métodos abreviados de teclado Acción
Windows/Puntos de interrupción No disponible Puntos de interrupción CTRL+ALT+B Mostrar la ventana Puntos de interrupción en la que puede ver y administrar los puntos de interrupción.
Windows/Inspección/Inspección1 No disponible Puntos de interrupción/Inspección/Inspección1 CTRL+ALT+W, 1 Mostrar la ventana Inspección1 .
Windows/Inspección/Inspección2 No disponible Puntos de interrupción/Inspección/Inspección2 CTRL+ALT+W, 2 Mostrar la ventana Inspección2 .
Windows/Inspección/Inspección3 No disponible Puntos de interrupción/Inspección/Inspección3 CTRL+ALT+W, 3 Mostrar la ventana Inspección3 .
Windows/Inspección/Inspección4 No disponible Puntos de interrupción/Inspección/Inspección4 CTRL+ALT+W, 4 Mostrar la ventana Inspección4 .
Windows/Variables locales No disponible Puntos de interrupción/Variables locales CTRL+ALT+V, L Mostrar la ventana Variables locales .
Windows/Pila de llamadas No disponible Puntos de interrupción/Pila de llamadas CTRL+ALT+C Mostrar la ventana Pila de llamadas .
Windows/Subprocesos No disponible Puntos de interrupción/Subprocesos CTRL+ALT+H Mostrar la ventana Subprocesos .
Continuar No disponible Continuar ALT+F5 Ejecutar un proceso hasta el siguiente punto de interrupción. La opción Continuar no está activa hasta que coloque el foco en una ventana del Editor de consultas que esté en el modo de depuración.
Iniciar depuración No disponible Iniciar depuración ALT+F5 Poner una ventana del Editor de consultas en el modo de depuración y ejecutar hasta el primer punto de interrupción. Si el foco está en la ventana del Editor de consultas que está en el modo de depuración, la opción Iniciar depuración se reemplaza por Continuar.
Interrumpir todos No disponible Interrumpir todos CTRL+ALT+INTERR El depurador de Transact-SQL no usa esta característica.
Detener la depuración No disponible Detener la depuración MAYÚS+F5 Sacar una ventana del Editor de consultas del modo de depuración y volver a ponerla en el modo normal.
Desasociar todo No disponible No disponible No disponible Detener el modo de depuración, pero se ejecutan las instrucciones restantes en la ventana del Editor de consultas.
Depurar paso a paso por instrucciones No disponible Depurar paso a paso por instrucciones F11 Ejecutar la siguiente instrucción y, además, abrir una nueva ventana del Editor de consultas en el modo de depuración si la siguiente instrucción ejecuta un procedimiento almacenado, un desencadenador o una función.
Depurar paso a paso por procedimientos No disponible Depurar paso a paso por procedimientos F10 Igual que Paso a paso por instrucciones, salvo que no se depuran las funciones, los procedimientos almacenados ni los desencadenadores.
Depurar paso a paso para salir No disponible Depurar paso a paso para salir MAYÚS+F11 Ejecutar el resto del código de un desencadenador, función o procedimiento almacenado sin detenciones por puntos de interrupción. Se reanuda el modo de depuración normal cuando el control se devuelva al código que llamó al módulo.
No disponible Ejecutar hasta el cursor No disponible CTRL+F10 Ejecutar todo el código desde la última ubicación de detención hasta la actual sin detenerse en ningún punto de interrupción.
inspección rápida inspección rápida No disponible CTRL+ALT+Q Mostrar la ventana Inspección rápida .
Alternar punto de interrupción Punto de interrupción/Insertar punto de interrupción No disponible F9 Colocar un punto de interrupción en la instrucción Transact-SQL actual o seleccionada.
No disponible Punto de interrupción/Eliminar punto de interrupción No disponible No disponible Eliminar el punto de interrupción de la línea seleccionada.
No disponible Punto de interrupción/Deshabilitar punto de interrupción No disponible No disponible Deshabilitar el punto de interrupción en la línea seleccionada. El punto de interrupción permanece en la línea de código, pero no detendrá la ejecución hasta que se rehabilite.
No disponible Punto de interrupción/Habilitar puntos de interrupción No disponible No disponible Habilitar el punto de interrupción en la línea seleccionada.
Eliminar todos los puntos de interrupción No disponible No disponible CTRL+MAYÚS+F9 Eliminar todos los puntos de interrupción.
Deshabilitar todos los puntos de interrupción No disponible No disponible No disponible Deshabilitar todos los puntos de interrupción.
No disponible Agregar inspección No disponible No disponible Agregar la expresión seleccionada a la ventana Inspección .