Ejecución del 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 establecer 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, consulte Configuración de 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 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 se puede ejecutar el depurador cuando la ventana del Editor de consultas está conectada a una instancia que está en modo 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 lo tanto, solo los miembros del rol fijo de servidor sysadmin pueden depurar en SQL Server.

  • Las sesiones de depuración suelen ejecutarse durante largos períodos de tiempo mientras se investigan las operaciones 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 iniciar el depurador de Transact-SQL, se coloca la ventana del Editor de consultas en modo de depuración. Cuando la ventana Editor de consultas entra en modo de depuración, el depurador se pausa en la primera línea de código. A continuación, puede recorrer el código, pausar la ejecución en instrucciones Transact-SQL específicas y usar las ventanas del depurador para ver el estado de ejecución actual. Para iniciar el depurador, seleccione el botón Depurar de la barra de herramientas Consulta o seleccione Iniciar depuración en el menú Depurar .

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

  • 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 consulta.
  • En la barra de herramientas Consulta , seleccione el botón Cancelar ejecución de consulta .

También puede detener el modo de depuración y permitir que las instrucciones Transact-SQL restantes terminen de ejecutarse seleccionando Desasociar todo en el menú Depurar .

Controla el depurador

Puede controlar cómo funciona el depurador de Transact-SQL mediante los siguientes 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 coloca en una ventana del Editor de consultas abierta. Permanecen activos hasta que se cierra el proyecto actual.

  • Los métodos abreviados de teclado del depurador.

  • Menú contextual del Editor de consultas. El menú contextual se muestra al hacer clic con el botón derecho en una línea en una ventana del Editor de consultas. Cuando la ventana del Editor de consultas está en modo de depuración, el menú contextual muestra los comandos del depurador que se aplican a la línea o cadena seleccionada.

  • Elementos de menú y comandos de contexto en las ventanas abiertas por el depurador, como las ventanas Inspección o Puntos de interrupción .

En la tabla siguiente se muestran los comandos de menú del depurador, los botones de la barra de herramientas y los métodos abreviados de teclado.

Comando del menú Depurar Comando de método abreviado del editor Botón de la barra de herramientas Atajo de teclado Acción
Windows/Puntos de interrupción No disponible Puntos de interrupción Ctrl+Alt+B Muestra la ventana Puntos de interrupción en la que puede ver y administrar puntos de interrupción.
Windows/Watch/Watch1 No disponible Puntos de interrupción/Vigilancia/Vigilancia1 Ctrl+Alt+W, 1 Muestra la ventana Monitor1.
Windows/Watch/Watch2 No disponible Puntos de interrupción/Observador/Observador2 Ctrl+Alt+W, 2 Muestra la ventana Watch2.
Windows/Watch/Watch3 No disponible Puntos de interrupción/Vigilancia/Vigilancia3 Ctrl+Alt+W, 3 Muestra la ventana Watch3.
Windows/Watch/Watch4 No disponible Puntos de interrupción/Vigilancia/Vigilancia4 Ctrl+Alt+W, 4 Muestra la ventana Watch4.
Windows/Locales No disponible Puntos de interrupción/Variables locales Ctrl+Alt+V, L Muestra la ventana Locales.
Windows/Pila de llamadas No disponible Puntos de interrupción/Pila de llamadas Ctrl+Alt+C Muestra la ventana Pila de llamadas .
Windows/Hilos No disponible Puntos de interrupción/Hilos Ctrl+Alt+H Muestra la ventana Subprocesos .
Continuar No disponible Continuar Alt+F5 Ejecutar hasta el siguiente punto de interrupción. Continuar no está activo hasta que el foco se encuentre en una ventana del Editor de consultas que esté en 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 se encuentra en una ventana del Editor de consultas que esté en modo de depuración, Iniciar depuración se sustituye por Continuar.
Interrumpir todo No disponible Interrumpir todo Ctrl+Alt+Quebrar Esta característica no la usa el depurador de Transact-SQL.
Detener la depuración No disponible Detener la depuración Turno+F5 Sacar una ventana del Editor de consultas fuera del modo de depuración y devolverla al modo normal.
Desvincular todo No disponible No disponible No disponible Detiene el modo de depuración, pero ejecuta las instrucciones restantes en la ventana del Editor de consultas.
Entrar No disponible Entrar F11 Ejecute la siguiente instrucción y abra también una nueva ventana del Editor de consultas en modo de depuración si la instrucción siguiente ejecuta un procedimiento almacenado, un desencadenador o una función.
Step Over No disponible Step Over F10 Igual que Paso a paso por instrucciones, salvo que no se depuran las funciones, los procedimientos almacenados ni los desencadenadores.
Salir No disponible Salir Turno+F11 Ejecute el código restante en un trigger, una función o un procedimiento almacenado sin detenerse en los puntos de ruptura. 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 Ejecute todo el código desde el último punto de parada hasta la ubicación actual del cursor sin detenerse en ningún punto de ruptura.
QuickWatch QuickWatch No disponible Ctrl+Alt+Q Muestra la ventana Inspección rápida .
Alternar punto de interrupción Punto de interrupción/Insertar punto de interrupción No disponible F9 Coloque 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 Elimine 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 Deshabilite el punto de interrupción en la línea seleccionada. El punto de interrupción permanece en la línea de código, pero la ejecución no se detiene hasta que se vuelve a habilitar.
No disponible Punto de interrupción/Habilitar punto de interrupción No disponible No disponible Habilite 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 Elimine todos los puntos de interrupción.
Deshabilitar todos los puntos de interrupción No disponible No disponible No disponible Deshabilite todos los puntos de ruptura.
No disponible Agregar observación No disponible No disponible Agregue la expresión seleccionada a la ventana Watch.