Compartir a través de


depurador de Transact-SQL

Se aplica a:SQL Server

El depurador de Transact-SQL ayuda a encontrar errores en el código Transact-SQL investigando el comportamiento del código en tiempo de ejecución. Después de establecer la ventana del Editor de consultas del motor de base de datos en modo de depuración, puede pausar la ejecución en líneas de código específicas e inspeccionar la información y los datos que usan o devuelven esas instrucciones Transact-SQL.

La depuración de T-SQL está disponible en SQL Server Data Tools para Visual Studio.

Paso a paso por el código de Transact-SQL

El depurador de Transact-SQL proporciona las siguientes opciones que puede usar para navegar por el código Transact-SQL cuando la ventana del Editor de Consultas del Motor de Base de Datos está en modo depuración.

  • Establezca puntos de interrupción en instrucciones Transact-SQL individuales.

    Un punto de interrupción especifica un punto en el que desea que la ejecución se detenga para que pueda examinar los datos. Al iniciar el depurador, se detiene en la primera línea de código de la ventana del Editor de consultas. Para ejecutar hasta el primer punto de interrupción, use Continuar. También puede usar Continuar para ejecutar hasta el siguiente punto de interrupción desde cualquier ubicación en la que la ventana actualmente está pausada. Puede editar puntos de interrupción para especificar acciones como las condiciones en las que el punto de interrupción debe pausar la ejecución, la información para imprimir en la ventana Salida y cambiar la ubicación del punto de interrupción.

  • Avance a la declaración siguiente.

    Esta opción le permite navegar por un conjunto de instrucciones una por una y observar su comportamiento mientras avanza.

  • Avance dentro de o sobre una llamada a un procedimiento almacenado o a una función.

    Si está seguro de que no hay errores en un procedimiento almacenado, puede pasar por él. El procedimiento se ejecuta en su totalidad y los resultados se devuelven al código.

    Si desea depurar un procedimiento almacenado o una función, puede ingresar paso a paso en el módulo. Se abre una nueva ventana del Editor de consultas del motor de base de datos que se rellena con el código fuente del módulo. La ventana está en modo de depuración y la ejecución se detiene en la primera instrucción del módulo. A continuación, puede navegar por el código del módulo, por ejemplo, estableciendo puntos de interrupción o ejecutando el código paso a paso.

Para obtener más información sobre cómo el depurador le permite navegar por el código, consulte Ejecutar código Transact-SQL paso a paso.

Visualización de la información del depurador

Cada vez que el depurador pausa la ejecución en una instrucción Transact-SQL específica, puede usar las siguientes ventanas del depurador para ver el estado de ejecución actual:

  • Locals y Watch. Estas ventanas muestran actualmente expresiones Transact-SQL asignadas. Las expresiones son cláusulas Transact-SQL que se evalúan como una expresión escalar única. El depurador de Transact-SQL admite la visualización de expresiones que hacen referencia a Transact-SQL variables, parámetros o las funciones integradas que tienen nombres que comienzan por @@. Estas ventanas también muestran los valores de datos asignados actualmente a las expresiones.

  • QuickWatch. Esta ventana muestra el valor de una expresión de Transact-SQL y permite guardar esa expresión en una ventana Inspección .

  • Puntos de interrupción. Esta ventana muestra los puntos de interrupción establecidos actualmente y le permite administrarlos.

  • Pila de llamadas. Esta ventana muestra la ubicación de ejecución actual. Además, proporciona información sobre el flujo de ejecución desde la ventana original del Editor de consultas a través de funciones, procedimientos almacenados o desencadenadores hasta alcanzar la ubicación de ejecución actual.

  • Salida. En esta ventana se muestran varios mensajes y datos de programa, como los mensajes del depurador del sistema.

  • Resultados y mensajes. Estas pestañas de la ventana Editor de consultas muestran los resultados de las instrucciones Transact-SQL ejecutadas anteriormente.

Problemas y limitaciones conocidos

El depurador de T-SQL solo se aplica a las instancias de SQL Server. El depurador no admite la depuración del código de Transact-SQL que se ejecuta en Azure SQL Database, Azure SQL Managed Instance o en la base de datos SQL en la Fabric.

En determinadas condiciones, el resaltado de las líneas del depurador de T-SQL y los puntos de interrupción pueden desincronizarse con el punto de ejecución real al avanzar paso a paso en un script SQL. El problema puede surgir en varios escenarios, incluido un comentario al principio del script o líneas vacías después de las declaraciones GO.

Tareas de depuración de Transact-SQL

Descripción de la tarea Artículo
Describe cómo configurar el depurador de Transact-SQL para la depuración remota. Configuración de reglas de firewall antes de ejecutar el depurador de Transact-SQL
Describe cómo iniciar, detener y controlar la operación del depurador. Ejecución del depurador de Transact-SQL
Describe cómo usar el depurador de Transact-SQL para recorrer el código. Paso a paso por el código de Transact-SQL
Describe cómo usar el depurador de Transact-SQL para recorrer paso a paso el código de procedimiento almacenado. Depurar procedimientos almacenados
Describe cómo usar el depurador para ver Transact-SQL datos, como parámetros y variables, e información del sistema. Información del depurador de Transact-SQL