13.42 INSERT文の拡張機能
SQLのINSERT文に対するPL/SQLの拡張機能により、insert_into_clauseで列リストを指定するかわりに、single_table_insertのvalues_clauseでレコード名を指定できます
この形式のINSERT文は、結果的にはレコードを表に挿入しますが、実際には表に行を追加し、その行の各列へ対応するレコードの値を設定します。
関連項目:
SQLのINSERT文の構文の詳細は、『Oracle Database SQL言語リファレンス』を参照してください。
ここでのトピック
構文
insert_into_clause ::=
values_clause ::=
セマンティクス
insert_into_clause
dml_table_expression_clause
通常は表名。詳細は、『Oracle Database SQL言語リファレンス』を参照してください。
t_alias
dml_table_expression_clauseの別名。
values_clause
record
RECORD型または%ROWTYPE型のレコード変数の名前。recordは、dml_table_expression_clauseによって説明される項目の行を表している必要があります。つまり、レコードには、行のすべての列に対して、互換性のあるデータ型のフィールドが必要です。列にNOT NULL制約が含まれている場合、対応するフィールドにNULL値を含めることはできません。
関連項目:
INSERT文の構文の詳細は、『Oracle Database SQL言語リファレンス』を参照してください。
例
-
例5-54、デフォルト値のレコードの挿入による表の初期化

