13.4 INSERTでテーブルへレコードを追加する
VBAとADOを使ってSQLを実行する方法がわかったところで、今度はSQLです。ここでは、テーブルへレコードを追加する方法をマスターしましょう。

テーブルへレコードを追加するときは、SQLのINSERT命令を使います。なお、INSERT命令を実行してもレコードセットは返りません。
INSERT命令の構文
INSERT INTO [追加先テーブル]
            [フィールドリスト]
      VALUE [値リスト]
テーブルへレコードを追加する例
次の例は、INSERT命令を使ってアドレス帳テーブルにレコードを追加する例です。アドレス帳テーブルへ新しいレコードを追加しています。

追加先のテーブルと使用するフィールドINTO句で記述します。INTOの後にテーブル名、( … )の中には追加するときに使うフィールドを全て記述します。フィールドを複数指定するときは、各フィールドをカンマで区切って記述しましょう。

各フィールドに設定する値VALUES句で記述します。( … )の中に、INTO句で記述したフィールドと同じ順序で、各フィールドにセットする値を記述します。複数ある場合はカンマで区切って記述しましょう。もちろん、フィールドリストと値リストの数は一致しいなければなりません。

なお、主キーに設定した値がテーブル内に既に存在するとエラーが発生しレコードの追加が行われません。

INSERT INTO  アドレス帳テーブル
            (漢字氏名
            ,性別コード
            ,生年月日
            ,PCメールアドレス )
     VALUES ('結城ケイスケ’
            ,1
            ,#2004/01/01#
            ,'webmaster@happy2-island.com')

また、VALUE句へ記述する値は、文字列や数値、日付などの種類別に次のように記述します。

■数値の場合
 1や100など、数値をそのまま記述します。例では、性別コードが該当します。

■文字列の場合
 '(シングルクォーテーション)で文字列を囲みます。例では、漢字氏名、PCメールアドレスが該当します。

■日付の場合
 日付の前後を#で囲みます。例では、生年月日が該当します。

■その他
 DATEDIFFやDATEADDなどの関数を記述することもできます。
次行ってみよう…
13.5 UPDATEでテーブルのレコードを更新する」へ進み、テーブル内のレコードを更新(変更)するテクニックをマスターしよう。
Copyright(C) 1999-2006 結城圭介。 All rights reserved