temporales - procedimientos almacenados sql
SQL Server: insertando salida de tablas mĂșltiples del procedimiento almacenado en tablas separadas (1)
Un procedimiento almacenado solo puede devolver un valor. Lo que hace su procedimiento almacenado es realizar selecciones múltiples y obtener conjuntos de resultados múltiples. Esto funciona para los sistemas que pueden consumir múltiples conjuntos de resultados, pero usted está atrapado en SQL-Server.
Compruebe si el proceso almacenado ya no llama a los procedimientos almacenados independientes para cada conjunto de resultados y, de ser así, llámelos. O use la definición del procedimiento almacenado y llame a cada consulta utilizada de forma secuencial.
Si no tiene acceso al sistema que proporciona el procedimiento almacenado, deberá implementar un procedimiento CLR almacenado y buscar cada conjunto de resultados para almacenar los resultados en tablas diferentes.
Tengo un procedimiento almacenado que devuelve varias tablas (actualmente consumidas por un servicio web). Ahora necesito insertar ese resultado en una base de datos de SQL Server.
Puedo insertar una sola tabla si conozco la definición existente a través de
INSERT INTO #temp
EXEC (''myProcSQlhere'')
Pero para esto necesito saber la definición de la tabla de salida de antemano.
SELECT *
INTO #temp
FROM OPENQUERY(SERVERNAME, ''EXEC myProcSQlhere'')
Lo cual permite conocer la definición de la tabla, pero solo permite la entrada a una tabla. Entonces, ¿cómo puedo insertar datos en múltiples tablas?