によると、 http://docs.oracle.com/cd/B10500_01/server.920/a96524/c21dlins.htm#10778
ダイレクト パス INSERT 操作中、Oracle は挿入されたデータをテーブル内の既存のデータの後に追加します。データは、バッファ キャッシュをバイパスして、データ ファイルに直接書き込まれます。既存のデータの空き領域は再利用されず、参照整合性制約は無視されます。これらの手順を組み合わせると、パフォーマンスが向上します。
したがって、次の SQL により、データがテーブル 'c' に挿入されます。しかし、Oracle は依然として参照制約をチェックします。
create table a(b varchar2(30));
alter table a add constraint "pk_a" primary key (b);
create table c(b varchar2(30), constraint "fk_b" foreign key(b) references a(b));
insert /*+ APPEND */ into c select 'a'||rownum from dual connect by level<=10000;