Compartir a través de


asignar parámetros de consulta a variables en una tarea Ejecutar SQL

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

Para obtener más información sobre la tarea Ejecutar SQL, los marcadores y los nombres de parámetros que se utilizan con diferentes tipos de conexiones, vea Tarea Ejecutar 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 tareas o contenedores 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 entrada directa, haga clic en Generar consulta y luego cree un comando SQL mediante las herramientas gráficas proporcionadas por 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

    @<nombre de parámetro>

    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 los productos de la tabla Product de AdventureWorks2012 que tienen un valor de 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 cómo usar 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

    @<nombre de parámetro>

    ODBC

    1, 2, 3, …

    EXCEL y OLE DB

    0, 1, 2, 3, …

  10. En la lista Nombre de variable, seleccione una variable. Para obtener 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.

    Nota importanteImportante

    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.

    Nota importanteImportante

    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. Haga clic en Aceptar.

Vea también

Conceptos

Tarea Ejecutar SQL

Parámetros y códigos de retorno en la tarea Ejecutar SQL

Variables de Integration Services (SSIS)