2017-08-01 18 views
0

で選択クエリに対する複数のIDの入力Oracle SOAでは、単一トランザクションで複数のレコードをデータベースに挿入できます。これは、サポートされており、これを実現するために特別な処理は必要ありません。 INSERT操作を使用してBPELプロセスでデータベース・アダプタを作成すると、入力としてオブジェクトのコレクションとして公開されます。 XSLTを使用してそのコレクションを割り当てると、すべてのレコードが1つのアトミックなトランザクションに挿入されます。oracle bpel dbadapter

純粋なSQLクエリと同等の機能はありますか?

私は複雑なクエリを入力するためには1つのidだけが必要です。 しかし、私はこの質問が複数のidに対して繰り返されるのが好きです。 forループを定義するのではなく、複数のidを入力として使用できるようにbpelプロセスを作成するときにフラグ/スイッチ/ウェイがありますか?

+0

「INSERT ALL」のようなものがこの要件を満たしますか?ここにいくつかの例があります:https://www.techonthenet.com/oracle/questions/insert_rows.php – g00dy

答えて

0

多分これは役立ちます:

create table test (id number(3), name varchar2(20)); 

insert into test 
    select t.column_value, dbms_random.string('A', 20) 
    from table(sys.odcinumberlist(4, 17, 105, 91, 212)) t; 

ピュアSQL、1 insert、定義されたid sの5行を。 idがvarcharの場合は、最初にカスタムタイプを定義するか、sys.odcivarchar2listを使用します。

+0

クエリを実行するテーブルを維持する考えは、私たちのためのハックではありません。 –

+0

あなたは新しいテーブルを作成します。私はそのような挿入が動作することを示すためにテストテーブルを作成しました。サンプルデータをどこかに挿入しなければなりませんでした。 –

+0

申し訳ありませんが、あなたは私の疑問を誤解しました。私は挿入操作には興味がなく、操作を選択しました –