Índice

Search

  1. Prólogo
  2. Introducción a las transformaciones
  3. Puertos de transformación
  4. Memorias caché de transformaciones
  5. Transformación del validador de direcciones
  6. Transformación de agregación
  7. Transformación de asociación
  8. Transformación de excepción de registros incorrectos
  9. Transformación de conversión de mayúsculas y minúsculas
  10. Transformación de clasificador
  11. Transformación de comparación
  12. Transformación de consolidación
  13. Transformación de enmascaramiento de datos
  14. Transformación del Procesador de datos
  15. Transformación de decisión
  16. Transformación de excepción de registros duplicados
  17. Transformación de expresión
  18. Transformación de filtro
  19. Transformación de jerárquica a relacional
  20. Transformación de Java
  21. Referencia API de transformación de Java
  22. Expresiones de Java
  23. Transformación de incorporación
  24. Transformación de generador de claves
  25. Transformación de etiquetador
  26. Transformación de búsqueda
  27. Memorias caché de búsqueda
  28. Memoria caché de búsqueda dinámica
  29. Transformación de macro
  30. Transformación de coincidencia
  31. Transformaciones de coincidencia en el análisis de campos
  32. Transformaciones de coincidencia en el análisis de identidad
  33. Transformación de normalizador
  34. Transformación de fusión
  35. Transformación de analizador
  36. Transformación de Python
  37. Transformación de rango
  38. Transformación de lectura
  39. Transformación de relacional a jerárquica
  40. Transformación de consumidor de servicio web REST
  41. Transformación de enrutador
  42. Transformación de generador de secuencia
  43. Transformación de ordenación
  44. Transformación de SQL
  45. Transformación de estandarizador
  46. Transformación de unión
  47. Transformación de estrategia de actualización
  48. Transformación de consumidor de servicio web
  49. Análisis de mensajes SOAP del servicio web
  50. Generación de mensajes SOAP del servicio web
  51. Transformación de media ponderada
  52. Transformación de ventana
  53. Transformación de escritura
  54. Apéndice A: Delimitadores de transformación

Guía de transformaciones de Developer

Guía de transformaciones de Developer

Conjuntos de resultados con diferentes bases de datos

Conjuntos de resultados con diferentes bases de datos

Configure los procedimientos almacenados para devolver los conjuntos de resultados utilizando diferentes sintaxis en función del tipo de base de datos.

Oracle

Una función almacenada de Oracle devuelve resultados con un cursor:
create or replace function sp_ListEmp return types.cursortype as l_cursor types.cursorType; begin open l_cursor for select ename, empno from emp order by ename; return l_cursor; end;
Oracle también acepta cursores como parámetros de entrada. No puede configurar cursores como parámetros de entrada con la transformación de SQL.

Microsoft SQL Server

Un proceso almacenado de Microsoft SQL Server devuelve un procedimiento almacenado del conjunto de resultados con una instrucción SELECT en el cuerpo del procedimiento o con el tipo de devolución declarado de forma explícita como una tabla.
Create PROCEDURE InOut( @inout varchar(100) OUT ) AS BEGIN set @inout = concat(@inout,'__') select * from mytable; END

IBM DB2

Un procedimiento almacenado de IBM DB2 puede devolver un conjunto de resultados con un cursor abierto. El número de conjuntos de resultados que devuelve están declarados en la cláusula RESULT SET. El procedimiento almacenado abre una cursor y lo devuelve. El siguiente ejemplo devuelve 2 cursores abiertos.
CREATE PROCEDURE TESTMULTIRS (IN i_cmacct CHARACTER(5)) RESULT SETS 2 LANGUAGE SQL BEGIN DECLARE csnum INTEGER; --Declare serial cursors to consume less resources --You do not need a rollable cursor. DECLARE getDeptNo CHAR(50); --Be careful with the estimated length. DECLARE getDeptName CHAR(200); DECLARE c1 CURSOR WITH RETURN FOR s1; SET getDeptNo = 'SELECT DEPTNO FROM DEPT'; SET getDeptName = 'SELECT DEPTNAME FROM DEPT'; PREPARE s1 FROM getDeptNo; OPEN c1; END;

Sybase

Un proceso almacenado de Sybase devuelve un procedimiento almacenado del conjunto de resultados con una instrucción SELECT en el cuerpo del procedimiento o con el tipo de devolución declarado de forma explícita como una tabla.
CREATE PROCEDURE FETCHEMPINFO ( @p_State VARCHAR(5), @e_id INT OUTPUT, @e_name VARCHAR(50) OUTPUT ) AS BEGIN SET NOCOUNT ON SELECT EMP_ID, NAME FROM EMP WHERE STATE = @p_State ORDER BY EMP_ID SET NOCOUNT OFF SELECT @e_id AS EMP_ID, @e_name AS NAME RETURN END GO --Configure the following variables to execute the procedure. DECLARE @p_State VARCHAR(5) DECLARE @EMPID int DECLARE @EMPNAME varchar(50) SET @p_State = 'CA' exec FETCHEMPINFO @p_State, @e_id = @EMPID, @e_name = @EMPNAME GO