Adsense

2015年8月23日日曜日

【Oracle】1つのSQL文で複数のテーブルへのINSERTを行う(マルチテーブルインサート)

1つのSQL文で複数のテーブルへのINSERTを行う(マルチテーブルインサート)
2つのテーブルに同時インサートする場合の例
■通常
  1. insert into table1(column1, column2, column3) values ('data1', 'data2', 'data3');
  2. insert into table2(column1, column2, column3) values ('data1', 'data2', 'data3');
↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓
■マルチテーブルインサートの場合
  1. insert all
  2.     into table1(column1, column2, column3) values ('data1', 'data2', 'data3')
  3.     into table2(column1, column2, column3) values ('data1', 'data2', 'data3')
  4. select * from dual;

■3テーブル以上、同一テーブルへの同時INSERT例
  1. insert all
  2.     into table1(column1, column2, column3) values ('data1', 'data2', 'data3')
  3.     into table1(column1, column2, column3) values ('data4', 'data5', 'data6')
  4.     into table2(column1, column2, column3) values ('data1', 'data2', 'data3')
  5.     into table3(column1, column2, column3) values ('data1', 'data2', 'data3')
  6.     into table4(column1, column2, column3) values ('data1', 'data2', 'data3')
  7. select * from dual;

0 件のコメント:

コメントを投稿