(1/2)SELECT文を理解したら、次はINTSERT、UPDATE、DELETEでデータ操作する感覚を覚えていこう。});連載バックナンバーWebブラウザで気軽に学ぶ実践SQL講座記事一覧これまでの連載では、SELECT文を使ってデータを検索するためのさまざまな構文を説明してきました。今回は、新たにデータを追加したり、データを変更したりするための構文を紹介します。データを追加するSQL文(INSERT)いままで使ってきたEMP表やDEPT表には、既にサンプルデータが用意されていました。SELECT文でDEPT表を見てみると図13-1のデータが登録されています。今回は、DEPT表に新しいデータを追加してみましょう。データを追加するには、INSERT文を使用します。INSERT文の基本的な構文は以下の通りです。INTO句に続けて、データを追加したい表名と列名を指定し、VALUES句にそれぞれの列に対応する値を指定します。;それでは、実際に試してみましょう。inserted」(日本語環境では「1行が作成されました」)が表示されます。SELECT文で検索して、実際にデータが正しく挿入されたか確認してみましょう。図13-2の結果を確認する先ほど入力したデータが登録されていることが分かります。特定の列のみを指定したINSERT文データを登録する際に、全ての値が決まっていない(省略できる値がある)場合もあるでしょう。そのような場合には、値を入れたい列のみを指定します。新しい部門を登録する際に、部門番号と部門名は決まっているが、場所が決まっていないという場合は、次の例のように、列名と値に部門番号と部門名のみを指定します。列名を省略したINSERT文INSERT文の基本的な構文は上記のとおりですが、「表にたくさんの列がある場合、全ての列を列挙するのは大変だな」と思われた方もいらっしゃるかもしれません。表名の後の列名は、省略することもできます。表名」で検索した際に表示される順番)に、VALUES句に指定した値が挿入されます。DEPT表のdeptno、dname、locという3つの列に対して、次のようにVALUES句で各列に入れる値を順番に指定することで、列名の指定を省略できます。列名を省略して挿入する列名を省略する際の注意点:全ての値を定義しないとエラーが返るこのように列名を省略する場合には、表に定義されている列の数だけ、値を指定する必要があることに注意してください。以下のように、3列から構成されるDEPT表に対して、2列分の値だけを指定すると、エラーが発生してデータは挿入されません。値の指定を失敗するとエラーになったこのような場合には、省略したい列値の代わりに「NULL」を指定して、エラーを回避できます。nullを指定するとデータが挿入できたこのように、列名を省略してデータをINSERTする方法は、テストのためにデータを登録したい場合には非常に便利です。アプリケーションやバッチ処理などでINSERT文を書く場合には注意が必要です。あとから列を追加した場合、実際の列の数と、指定している値の数が異なり、実行時にエラーになってしまう可能性があるためです。アプリケーションやバッチ処理のなかでSQL文を書く際には、変更に対応しやすい構文で記述することが重要です。◇ここまでの例で、DEPT表に新しいデータを何件か登録しました。SELECT文で確認すると、以下のようなデータが入っています。メールマガジンをご購読ください。申し込みページへITmediaはアイティメディア株式会社の登録商標です。