Compartir a través de


Esquemas de mensaje para operaciones básicas de inserción, actualización, eliminación y selección en tablas y vistas

El adaptador de Microsoft BizTalk para base de datos de Oracle muestra las operaciones básicas de inserción, actualización, eliminación y selección para cada tabla y vista de la base de datos de Oracle. Estas operaciones realizan la instrucción SQL adecuada calificada por una cláusula WHERE. El adaptador de Oracle Database usa registros fuertemente tipados y conjuntos de registros en estas operaciones.

Estructura de mensajes para operaciones básicas de tabla

En la tabla siguiente se muestra la estructura de mensajes XML para las operaciones de tabla básicas expuestas por el adaptador de Oracle Database en tablas de base de datos de Oracle. La tabla de destino de una operación se especifica en la acción de mensaje y también aparece en el espacio de nombres de destino.

Insertar

Hay los siguientes tipos de operaciones de inserción. Un mensaje solo puede contener un tipo de operación De inserción.

  • Varias inserciones de registros insertan el conjunto de registros proporcionado de datos fuertemente tipados en la tabla de destino.
  • Para cada registro de una inserción de varios registros, puede especificar el valor de un atributo opcional denominado InlineValue. Si se especifica, invalida el valor del elemento .
  • Inserción masiva inserta el conjunto de registros devuelto por una consulta SELECT especificada en el elemento QUERY en la tabla de destino. Esto se hace mediante la lista separada por comas de columnas especificadas en el elemento COLUMN_NAMES.

Mensaje XML

Inserción de varios registros

<Insert xmlns="[VERSION]/[SCHEMA]/Table/[TABLE_NAME]">   
<RECORDSET>     
<[TABLE_NAME]RECORDINSERT>       
<[FIELD1_NAME InlineValue="value"]>value1</[FIELD1_NAME]>       
<[FIELD2_NAME InlineValue="value"]>value2</[FIELD2_NAME]>       
…     
</[TABLE_NAME]RECORDINSERT>       
<[TABLE_NAME]RECORDINSERT >       
<[FIELD1_NAME InlineValue="value"]>value1</[FIELD1_NAME]>       
<[FIELD2_NAME InlineValue="value"]>value2</[FIELD2_NAME]>       
…     
</[TABLE_NAME]RECORDINSERT>     
…   
</RECORDSET> 
</Insert>

SQL ejecutado por el adaptador: INSERT INTO TABLE_NAME (FIELD1_NAME, FIELD2_NAME, …)VALUES (value1, value2, …);

Inserción masiva

<Insert xmlns="[VERSION]/[SCHEMA]/Table/[TABLE_NAME]">
<COLUMN_NAMES>[COLUMN_list]</COLUMN_NAMES>
<QUERY>[SELECT_query]</QUERY>
</Insert>

SQL ejecutado por el adaptador: INSERT INTO TABLE_NAME (COLUMN_list) SELECT_query;

Insertar respuesta

El número de filas insertadas se devuelve en el elemento InsertResult.

Mensaje XML

<InsertResponse xmlns="[VERSION]/[SCHEMA]/Table/[TABLE_NAME]">   
<InsertResult>[rows inserted]</InsertResult> 
</InsertResponse>

Seleccionar

Una consulta SELECT se realiza en la tabla de destino mediante la cláusula WHERE especificada en el elemento FILTER. El conjunto de resultados contiene las columnas de la lista separada por comas de nombres de columna especificados en el elemento COLUMN_NAMES.

Mensaje XML

<Select xmlns="[VERSION]/[SCHEMA]/Table/[TABLE_NAME]">   
<COLUMN_NAMES>[COLUMN_list]</COLUMN_NAMES>   
<FILTER>WHERE_clause</FILTER> 
</Select>

SQL ejecutado por el adaptador: SELECT COLUMN_list FROM TABLE_NAME WHERE WHERE_clause;

Seleccionar respuesta

Conjunto de resultados generado por la consulta SELECT.

Mensaje XML

<SelectResponse xmlns="[VERSION]/[SCHEMA]/Table/[TABLE_NAME]">   
<SelectResult>     
<[TABLE_NAME]RECORDSELECT>       
<[FIELD1_NAME]>value1</[FIELD1_NAME]>       
<[FIELD2_NAME]>value2</[FIELD2_NAME]>       
…     
</[TABLE_NAME]RECORDSELECT>   
</SelectResult> 
</SelectResponse>

Actualizar

Las filas que coinciden con la cláusula where especificada en el elemento FILTER se actualizan a los valores especificados en recordset. Solo las columnas especificadas en recordset se actualizan en cada fila coincidente.

Mensaje XML

<Update xmlns="[VERSION]/[SCHEMA]/Table/[TABLE_NAME]">   
<RECORDSET>     
<[FIELD1_NAME]>value1</[FIELD1_NAME]>     
<[FIELD2_NAME]>value2</[FIELD2_NAME]>       
…   
</RECORDSET>   
<FILTER>WHERE_clause</FILTER> </Update>

SQL ejecutado por el adaptador: UPDATE [TABLE_NAME] SET [FIELD1_NAME] = value1, [FIELD2_NAME] = value2, … WHERE WHERE_clause;

Actualizar respuesta

El número de filas actualizadas se devuelve en el elemento UpdateResult.

Mensaje XML

<UpdateResponse xmlns="[VERSION]/[SCHEMA]/Table/[TABLE_NAME]">   
<UpdateResult>[rows inserted]</UpdateResult> 
</UpdateResponse>

Eliminar

Se eliminan las filas que coinciden con la cláusula WHERE especificada por el elemento FILTER.

Mensaje XML

<Delete xmlns="[VERSION]/[SCHEMA]/Table/[TABLE_NAME]">   
<FILTER>WHERE_clause</FILTER> 
</Delete>

SQL ejecutado por el adaptador: DELETE FROM [TABLE_NAME] WHERE WHERE_clause;

Eliminar respuesta

El número de filas eliminadas se devuelve en el elemento DeleteResult.

Mensaje XML

<DeleteResponse xmlns="[VERSION]/[SCHEMA]/Table/[TABLE_NAME]">   
<DeleteResult>[rows inserted]</DeleteResult> 
</DeleteResponse>
Valor del marcador de posición Descripción
[VERSION] Cadena de versión del mensaje; por ejemplo, http://Microsoft.LobServices.OracleDB/2007/03
[SCHEMA] Colección de artefactos de Oracle; por ejemplo, SCOTT
[TABLE_NAME] Nombre de la tabla; por ejemplo, EMP
[FIELD1_NAME] Nombre del campo de tabla; por ejemplo, EMPNAME
[COLUMN_list] Lista separada por comas de columnas; por ejemplo, NAME
[SELECT_query] Instrucción SELECT de SQL especificada en el elemento QUERY de una operación inserción masiva; por ejemplo, SELECT * from MyTable
[WHERE_clause] WHERE_clause para la instrucción SELECT utilizada para la operación; por ejemplo, ID > 10

Importante

La estructura de mensajes para las operaciones básicas de tabla en vistas es la misma que en las tablas, pero el espacio de nombres de la operación especifica una vista en lugar de una tabla: <Insert xmlns ="[VERSION]/[SCHEMA]/``View``/[VIEW_NAME]">.

Acciones de mensaje para operaciones básicas de tabla

En la tabla siguiente se muestran las acciones de mensaje que usa el adaptador de Oracle Database para las operaciones básicas de tabla en las tablas. El adaptador de base de datos de Oracle usa el nombre de tabla especificado en la acción de mensaje para determinar la tabla de destino de la operación.

Operación Acción de mensaje Ejemplo
Insertar [VERSION]/[SCHEMA]/Table/[TABLE_NAME]/Insert http://Microsoft.LobServices.OracleDB/2007/03/SCOTT/Table/EMP/Insert
Insertar respuesta [VERSION]/[SCHEMA]/Table/[TABLE_NAME]/Insert/response http://Microsoft.LobServices.OracleDB/2007/03/SCOTT/Table/EMP/Insert/response
Seleccionar [VERSION]/[SCHEMA]/Table/[TABLE_NAME]/Select http://Microsoft.LobServices.OracleDB/2007/03/SCOTT/Table/EMP/Select
Seleccionar respuesta [VERSION]/[SCHEMA]/Table/[TABLE_NAME]/Select/response http://Microsoft.LobServices.OracleDB/2007/03/SCOTT/Table/EMP/Select/response
Actualizar [VERSION]/[SCHEMA]/Table/[TABLE_NAME]/Update http://Microsoft.LobServices.OracleDB/2007/03/SCOTT/Table/EMP/Update
Actualizar respuesta [VERSION]/[SCHEMA]/Table/[TABLE_NAME]/Update/response http://Microsoft.LobServices.OracleDB/2007/03/SCOTT/Table/EMP/Update/response
Eliminar [VERSION]/[SCHEMA]/Table/[TABLE_NAME]/Delete http://Microsoft.LobServices.OracleDB/2007/03/SCOTT/Table/EMP/Delete
Eliminar respuesta [VERSION]/[SCHEMA]/Table/[TABLE_NAME]/Delete/response http://Microsoft.LobServices.OracleDB/2007/03/SCOTT/Table/EMP/Delete/response

[VERSION] = La cadena de versión del mensaje; por ejemplo, http://Microsoft.LobServices.OracleDB/2007/03.

[SCHEMA] = Colección de artefactos de Oracle; por ejemplo, SCOTT.

[TABLE_NAME] = Nombre de la tabla; por ejemplo, EMP.

Importante

La acción de mensaje para una operación en una vista es la misma que para una tabla, excepto que "View" reemplaza a "Table"; por ejemplo, http://Microsoft.LobServices.OracleDB/2007/03/SCOTT/``View``/EMPVIEW/Insert.

Consulte también

Mensajes y esquemas de mensaje para el adaptador de BizTalk para la base de datos de Oracle