データの挿入テーブルは、作成時にはデータを含んでいません。データベースを利用価値のあるものにするには、まずデータを挿入する必要があります。概念的には、データは一度に1行ずつ挿入されます。ユーザは複数行を挿入することもできますが、1行未満を挿入することはできません。列の値が一部しかわかっていない場合でも、1行全体を作成しなければなりません。新規の行を作成するには、INSERTコマンドを使用します。このコマンドは、テーブル名と列の値を必要とします。第5章のproductsテーブルの例で考えてみましょう。numeric);行を挿入するためのコマンド例は以下のようになります。9.99);データ値は、テーブル内で列が存在する順序に従ってカンマで区切って列挙されています。通常、データ値はリテラル(定数)ですが、スカラ式も使用できます。上記の構文には、テーブル内の列の順序を知っていなければならないという欠点があります。これを避けるには、列を明示的に列挙する方法があります。以下の2つのどちらのコマンドでも上記のコマンドと同等の効果が得られます。1);多くのユーザは常に列名を列挙する方法が優れていると考えています。値がわからない列については、省略することができます。省略した列には、デフォルト値が挿入されます。'Cheese');後者はPostgreSQLの拡張機能です。これによって、列には左から順に指定されただけの値が挿入され、残りにはデフォルト値が挿入されます。明確にするため、列ごと、あるいは行全体についてデフォルト値を明示的に要求することもできます。VALUES;単一コマンドで複数行を挿入することができます。2.99);また、問い合わせの結果(0行かも、1行かも、複数行かもしれない)を挿入することもできます。'today';これにより、挿入する行を計算するためにSQLの問い合わせ機構(第7章)の全機能が提供されます。ヒント一度に大量のデータを挿入する場合はCOPYコマンドの使用を検討してください。INSERTコマンドほどの柔軟性はありませんが、より効率的です。大量のデータをロードする性能を向上することについて、詳細は14.4を参照してください。