Compartir a través de


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 del motor de base de datos debe estar conectada mediante una autenticación de Windows o un inicio de sesión 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 altamente privilegiada. 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, pueden mantenerse durante períodos prolongados, hasta que finalice la sesión o se confirme o se 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.

  • Atajos 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 de menú Depurar Comando de acceso directo del editor Botón de la barra de herramientas Atajo 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/Monitoreo/Monitoreo3 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/Threads No disponible Puntos de interrupción/Subprocesos Ctrl+Alt+H Muestra la ventana Subprocesos .
Continuar No disponible Continuar Alt+F5 Ejecuta hasta el siguiente punto de interrupción. Continuar no estará activo hasta que se haya centrado en una ventana del Editor de Consultas que esté en modo de depuración.
Iniciar depuración No disponible Iniciar depuración Alt+F5 Coloque una ventana del Editor de consultas en modo de depuración y ejecute hasta el primer punto de interrupción. Si se centra en una ventana del Editor de consultas que está en modo de depuración, Start Debugging (Iniciar depuración ) se reemplaza por Continue (Continuar).
Interrumpir todo No disponible Interrumpir todo Ctrl+Alt+Quebrar Esta característica no la usa el depurador de Transact-SQL.
Detener depuración No disponible Detener depuración Turno+F5 Sacar una ventana del Editor de consultas fuera del modo de depuración y devolverla al modo normal.
Desacoplar 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.
Paso por encima No disponible Saltar Sobre F10 Igual que Entrar, excepto que no se depuran funciones, procedimientos almacenados ni 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. El modo de depuración normal se reanuda cuando se devuelve el control al código que llamó al módulo.
No disponible Ejecutar en 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 Vista rápida 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+Turno+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.