Compartir a través de


Asignar parámetros de consulta a variables en una Tarea Ejecutar SQL

En este tema se describe cómo usar una instrucción SQL parametrizada en la tarea Ejecutar SQL y crear asignaciones entre variables y los parámetros de la instrucción SQL.

Para obtener más información sobre la tarea Ejecutar SQL, los marcadores de parámetro y los nombres de parámetro que use con diferentes tipos de conexión, vea Ejecutar tarea SQL y parámetros y códigos de retorno en la tarea Ejecutar SQL.

Para asignar un parámetro de consulta a una variable

  1. En SQL Server Data Tools (SSDT), abra el paquete de Integration Services con el que desea trabajar.

  2. En el Explorador de soluciones, haga doble clic en el paquete para abrirlo.

  3. Haga clic en la pestaña Flujo de control .

  4. Si el paquete no incluye en ese momento una tarea Ejecutar SQL, agregue una al flujo de control del paquete. Para obtener más información, vea Agregar o eliminar una tarea o un contenedor en un flujo de control.
    .

  5. Haga doble clic en la tarea Ejecutar SQL.

  6. Proporcione un comando SQL con parámetros en una de las siguientes maneras:

    • Use entrada directa y escriba el comando SQL en la propiedad SQLStatement.

    • Use la entrada directa, haga clic en Generar consulta y, a continuación, cree un comando SQL mediante las herramientas gráficas que proporciona el Generador de consultas.

    • Use una conexión de archivo y luego haga referencia al archivo que contiene el comando SQL.

    • Use una variable y luego haga referencia a la variable que contiene el comando SQL.

    Los marcadores de parámetros que utiliza en las instrucciones SQL con parámetros dependen del tipo de conexión que utiliza la tarea Ejecutar SQL.

    Tipo de conexión Marcador de parámetro
    ADO ?
    ADO.NET y SQLMOBILE @<parameter_name>
    ODBC ?
    EXCEL y OLE DB ?

    La tabla siguiente enumera ejemplos del comando SELECT por tipo de Administrador de conexiones. Los parámetros proporcionan los valores de filtro en las cláusulas WHERE. Los ejemplos usan SELECT para devolver productos de la tabla Product de AdventureWorks2012 que tienen un ProductID mayor y menor que los valores especificados por dos parámetros.

    Tipo de conexión Sintaxis de SELECT
    EXCEL, ODBC y OLE DB SELECT* FROM Production.Product WHERE ProductId > ? AND ProductID < ?
    ADO SELECT* FROM Production.Product WHERE ProductId > ? AND ProductID < ?
    ADO.NET SELECT* FROM Production.Product WHERE ProductId > @parmMinProductID AND ProductID < @parmMaxProductID

    Para obtener ejemplos de uso de parámetros con procedimientos almacenados, vea Parámetros y códigos de retorno en la tarea Ejecutar SQL.

  7. Haga clic en Asignación de parámetros.

  8. Para agregar una asignación de parámetros, haga clic en Agregar.

  9. Escriba un nombre en el cuadro Nombre de parámetro .

    Los nombres de parámetros que utiliza dependen del tipo de conexión que utiliza la tarea Ejecutar SQL.

    Tipo de conexión Nombre del parámetro
    ADO Param1, Param2…
    ADO.NET y SQLMOBILE @<parameter_name>
    ODBC 1, 2, 3…
    EXCEL y OLE DB 0, 1, 2, 3…
  10. En la lista Nombre de variable , seleccione una variable. Para más información, vea Agregar, eliminar, cambiar el ámbito de la variable definida por el usuario en un paquete.

  11. En la lista Dirección , especifique si el parámetro es una entrada, una salida o un valor devuelto.

  12. En la lista Tipo de datos , seleccione el tipo de datos del parámetro.

    Importante

    El tipo de datos del parámetro debe ser compatible con el tipo de datos de la variable.

  13. Repita los pasos del 8 al 11 para cada parámetro en la instrucción SQL.

    Importante

    El orden de las asignaciones de parámetros debe ser el mismo que el orden en que aparecen los parámetros en la instrucción SQL.

  14. Haz clic en Aceptar.

Véase también

Tarea Ejecutar SQL
Parámetros y códigos de retorno en la tarea Ejecutar SQL
Variables de Integration Services (SSIS)