前章では、データを保持するためのテーブルやその他の構造の作成方法について説明しました。テーブルにデータを挿入してみましょう。本章では、テーブルのデータの挿入、更新、削除の方法について説明します。特定のイベントが起こったときに自動的にデータを変更する方法、すなわちトリガと書き換えルールについても紹介します。本章以降において、ずっと見つけられなかったデータをデータベースから抽出する方法について説明します。データの挿入テーブルは、作成時にはデータを含んでいません。データベースを利用価値のあるものにするには、まずデータを挿入する必要があります。理論的には、データは1度に1行ずつ挿入されます。ユーザは複数行に挿入することもできますが、1度に1行未満を挿入することはできません。列の値が一部しか分かっていない場合でも、1行全体を作成しなければなりません。新規の行を作成するには、INSERTコマンドを使用します。このコマンドでは、テーブル名とテーブルの各列の値を指定する必要があります。第5章のproductsテーブルの例で考えてみましょう。numeric);この場合、行を挿入するためのコマンドは以下のようになります。9.99);データ値は、テーブルで列が表示される順序に従ってカンマで区切って列挙します。通常、データ値はリテラル(定数)ですが、スカラ式も使用できます。上記の構文には、テーブル内の列の順序を知っていなければならないという難点があります。これを避けるには、列を明示的に列挙する方法があります。以下の2つのどちらのコマンドでも上記のコマンドと同等の効果が得られます。1);多くのユーザは常に列名を列挙する方法が優れていると考えています。値が分からない列については、省略することができます。省略した列には、デフォルト値が挿入されます。'Cheese');後者はPostgreSQLの拡張機能です。これによって、列には左から順に指定されただけの値が挿入され、残りにはデフォルト値が挿入されます。明確にするため、列ごと、あるいは行全体についてデフォルト値を明示的に要求することもできます。大量のデータを挿入する"一括ロード"を行う場合はCOPYコマンドを検討してください。柔軟性はありませんが、効率的です。