Compartir a través de


Procedimientos almacenados: ejecución

Se aplica a: SQL Server Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW)

Descargar controlador OLE DB

Cuando se ejecutan instrucciones, llamar a un procedimiento almacenado en el origen de datos (en lugar de ejecutar o preparar directamente una instrucción en la aplicación cliente) puede proporcionar lo siguiente:

  • Mayor rendimiento.

  • Sobrecarga de red reducida.

  • Mejor coherencia

  • Mayor exactitud

  • Función agregada.

OLE DB Driver for SQL Server admite tres de los mecanismos que los procedimientos almacenados de SQL Server usan para devolver datos:

  • Cada instrucción SELECT del procedimiento genera un conjunto de resultados.

  • El procedimiento puede devolver datos mediante parámetros de salida.

  • El procedimiento puede tener un código de retorno de tipo entero.

La aplicación debe ser capaz de manejar todos estos resultados de los procedimientos almacenados.

Diferentes proveedores OLE DB devuelven parámetros de salida y valores devueltos en diferentes momentos durante el procesamiento de los resultados. En el caso del controlador OLE DB para SQL Server, los parámetros de salida y los códigos de retorno no se proporcionan hasta después de que el consumidor haya recuperado o cancelado los conjuntos de resultados devueltos por el procedimiento almacenado. Los códigos de retorno y los parámetros de salida se devuelven en el último paquete TDS del servidor.

Los proveedores usan la propiedad DBPROP_OUTPUTPARAMETERAVAILABILITY para notificar cuando devuelve parámetros de salida y valores de retorno. Esta propiedad se encuentra en el conjunto de propiedades DBPROPSET_DATASOURCEINFO.

El controlador OLE DB para SQL Server establece la propiedad DBPROP_OUTPUTPARAMETERAVAILABILITY en DBPROPVAL_OA_ATROWRELEASE para indicar que no se devuelven los códigos de retorno y los parámetros de salida hasta que no se procese o publique el conjunto de resultados.

Consulte también

Procedimientos almacenados