Freigeben über


Nachrichtenschemas für grundlegende Einfüge-, Update-, Lösch- und Auswahlvorgänge für Tabellen und Ansichten

Der Microsoft BizTalk-Adapter für Oracle-Datenbank enthält grundlegende Einfüge-, Update-, Lösch- und Auswahlvorgänge für jede Tabelle und Ansicht in der Oracle-Datenbank. Diese Vorgänge führen die entsprechende SQL-Anweisung aus, die durch eine WHERE-Klausel qualifiziert ist. Der Oracle Database-Adapter verwendet in diesen Vorgängen stark typisierte Datensätze und Datensatzsätze.

Nachrichtenstruktur für grundlegende Tabellenvorgänge

Die folgende Tabelle zeigt die XML-Nachrichtenstruktur für die grundlegenden Tabellenvorgänge, die vom Oracle Database-Adapter für Oracle-Datenbanktabellen verfügbar gemacht werden. Die Zieltabelle für einen Vorgang wird in der Nachrichtenaktion angegeben und wird auch im Zielnamespace angezeigt.

Einfügen

Es gibt die folgenden Arten von Einfügevorgängen. Eine Nachricht kann nur eine Art von Einfügevorgang enthalten.

  • Multiple Record Insert fügt den angegebenen Datensatzsatz mit stark typisierten Daten in die Zieltabelle ein.
  • Für jeden Datensatz in einem Einfügen mit mehreren Datensätzen können Sie einen Wert für ein optionales Attribut namens InlineValue angeben. Wenn angegeben, überschreibt es den Wert des Elements.
  • Masseneinfügung fügt den Datensatzsatz, der von einer IM QUERY-Element angegebenen SELECT-Abfrage zurückgegeben wird, in die Zieltabelle ein. Dies geschieht mithilfe der durch Trennzeichen getrennten Liste der Spalten, die im COLUMN_NAMES-Element angegeben sind.

XML-Nachricht

Einfügen mehrerer Datensätze

<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, die vom Adapter ausgeführt wird: INSERT INTO TABLE_NAME (FIELD1_NAME, FIELD2_NAME, …)VALUES (value1, value2, …);

Masseneinfügung

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

SQL, die vom Adapter ausgeführt wird: INSERT INTO TABLE_NAME (COLUMN_list) SELECT_query;

Antwort einfügen

Die Anzahl der eingefügten Zeilen wird im InsertResult-Element zurückgegeben.

XML-Nachricht

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

Select

Eine SELECT-Abfrage wird für die Zieltabelle unter Verwendung der WHERE-Klausel ausgeführt, die im FILTER-Element angegeben ist. Das Resultset enthält die Spalten in der durch Trennzeichen getrennten Liste der Spaltennamen, die im COLUMN_NAMES-Element angegeben sind.

XML-Nachricht

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

SQL, die vom Adapter ausgeführt wird: SELECT COLUMN_list FROM TABLE_NAME WHERE WHERE_clause;

Antwort auswählen

Das von der SELECT-Abfrage generierte Resultset.

XML-Nachricht

<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>

Aktualisieren

Zeilen, die der im FILTER-Element angegebenen where-Klausel entsprechen, werden auf die im RECORDSET angegebenen Werte aktualisiert. Nur die Spalten, die im RECORDSET angegeben sind, werden in jeder übereinstimmenden Zeile aktualisiert.

XML-Nachricht

<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, die vom Adapter ausgeführt wird: UPDATE [TABLE_NAME] SET [FIELD1_NAME] = value1, [FIELD2_NAME] = value2, … WHERE WHERE_clause;

Antwort aktualisieren

Die Anzahl der aktualisierten Zeilen wird im UpdateResult-Element zurückgegeben.

XML-Nachricht

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

Löschen

Zeilen, die der VOM FILTER-Element angegebenen WHERE-Klausel entsprechen, werden gelöscht.

XML-Nachricht

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

SQL, die vom Adapter ausgeführt wird: DELETE FROM [TABLE_NAME] WHERE WHERE_clause;

Antwort löschen

Die Anzahl der gelöschten Zeilen wird im DeleteResult-Element zurückgegeben.

XML-Nachricht

<DeleteResponse xmlns="[VERSION]/[SCHEMA]/Table/[TABLE_NAME]">   
<DeleteResult>[rows inserted]</DeleteResult> 
</DeleteResponse>
Platzhalterwert BESCHREIBUNG
[VERSION] Die Nachrichtenversionszeichenfolge; Zum Beispiel http://Microsoft.LobServices.OracleDB/2007/03
[SCHEMA] Sammlung von Oracle-Artefakten; Zum Beispiel SCOTT
[TABLE_NAME] Name der Tabelle; Zum Beispiel EMP
[FIELD1_NAME] Tabellenfeldname; Zum Beispiel EMPNAME
[COLUMN_list] Durch Trennzeichen getrennte Liste von Spalten; Zum Beispiel NAME
[SELECT_query] Eine SQL SELECT-Anweisung, die im QUERY-Element eines Masseneinfügevorgangs angegeben ist; Zum Beispiel SELECT * from MyTable
[WHERE_clause] WHERE_clause für die SELECT-Anweisung, die für den Vorgang verwendet wird; Zum Beispiel ID > 10

Wichtig

Die Nachrichtenstruktur für die grundlegenden Tabellenvorgänge für Ansichten ist identisch mit der für Tabellen, aber der Namespace für den Vorgang gibt eine Ansicht und nicht eine Tabelle an: <Insert xmlns ="[VERSION]/[SCHEMA]/``View``/[VIEW_NAME]">.

Nachrichtenaktionen für grundlegende Tabellenvorgänge

Die folgende Tabelle zeigt die Nachrichtenaktionen, die vom Oracle Database-Adapter für die grundlegenden Tabellenvorgänge für Tabellen verwendet werden. Der Oracle Database-Adapter verwendet den tabellennamen, der in der Nachrichtenaktion angegeben ist, um die Zieltabelle des Vorgangs zu bestimmen.

Vorgang Nachrichtenaktion Beispiel
Einfügen [VERSION]/[SCHEMA]/Table/[TABLE_NAME]/Insert http://Microsoft.LobServices.OracleDB/2007/03/SCOTT/Table/EMP/Insert
Antwort einfügen [VERSION]/[SCHEMA]/Table/[TABLE_NAME]/Insert/response http://Microsoft.LobServices.OracleDB/2007/03/SCOTT/Table/EMP/Insert/response
Select [VERSION]/[SCHEMA]/Table/[TABLE_NAME]/Select http://Microsoft.LobServices.OracleDB/2007/03/SCOTT/Table/EMP/Select
Antwort auswählen [VERSION]/[SCHEMA]/Table/[TABLE_NAME]/Select/response http://Microsoft.LobServices.OracleDB/2007/03/SCOTT/Table/EMP/Select/response
Aktualisieren [VERSION]/[SCHEMA]/Table/[TABLE_NAME]/Update http://Microsoft.LobServices.OracleDB/2007/03/SCOTT/Table/EMP/Update
Antwort aktualisieren [VERSION]/[SCHEMA]/Table/[TABLE_NAME]/Update/response http://Microsoft.LobServices.OracleDB/2007/03/SCOTT/Table/EMP/Update/response
Löschen [VERSION]/[SCHEMA]/Table/[TABLE_NAME]/Delete http://Microsoft.LobServices.OracleDB/2007/03/SCOTT/Table/EMP/Delete
Antwort löschen [VERSION]/[SCHEMA]/Table/[TABLE_NAME]/Delete/response http://Microsoft.LobServices.OracleDB/2007/03/SCOTT/Table/EMP/Delete/response

[VERSION] = Die Nachrichtenversionszeichenfolge; Beispiel http://Microsoft.LobServices.OracleDB/2007/03: .

[SCHEMA] = Sammlung von Oracle-Artefakten; z. B. SCOTT.

[TABLE_NAME] = Name der Tabelle; z. B. EMP.

Wichtig

Die Nachrichtenaktion für einen Vorgang für eine Ansicht ist identisch mit der für eine Tabelle, mit der Ausnahme, dass "Ansicht" "Tabelle" ersetzt; Beispiel http://Microsoft.LobServices.OracleDB/2007/03/SCOTT/``View``/EMPVIEW/Insert: .

Weitere Informationen

Nachrichten und Nachrichtenschemas für BizTalk Adapter für Oracle Database