INSERTクエリ
構文
以下に示すINSERT INTO文には、2つの基本的な構文があります。この二つを使い作成していきます。
INSERT INTO TABLE_NAME (column1, column2, column3,...columnN) VALUES (value1, value2, value3,...valueN);
ここで、column1、column2、column3、… columnNは、データを挿入するテーブル内の列の名前です。
表のすべての列に値を追加する場合は、SQL問合せで列名を指定する必要はありません。ただし、値の順序が表の列と同じ順序であることが条件になります。
SQL INSERT INTOの構文は次のとおりになります-
INSERT INTO TABLE_NAME VALUES (value1,value2,value3,...valueN);
例
例えばCUSTOMERS tableを以下のように作ったとしましょう。
INSERT INTO CUSTOMERS (ID,NAME,AGE,ADDRESS,SALARY) VALUES (1, 'Ramesh', 32, 'Ahmedabad', 2000.00 ); INSERT INTO CUSTOMERS (ID,NAME,AGE,ADDRESS,SALARY) VALUES (2, 'Khilan', 25, 'Delhi', 1500.00 ); INSERT INTO CUSTOMERS (ID,NAME,AGE,ADDRESS,SALARY) VALUES (3, 'kaushik', 23, 'Kota', 2000.00 ); INSERT INTO CUSTOMERS (ID,NAME,AGE,ADDRESS,SALARY) VALUES (4, 'Chaitali', 25, 'Mumbai', 6500.00 ); INSERT INTO CUSTOMERS (ID,NAME,AGE,ADDRESS,SALARY) VALUES (5, 'Hardik', 27, 'Bhopal', 8500.00 ); INSERT INTO CUSTOMERS (ID,NAME,AGE,ADDRESS,SALARY) VALUES (6, 'Komal', 22, 'MP', 4500.00 );
それではこのテーブルを作ったとして7番目のテーブルにNakamuraを加えます。
INSERT INTO CUSTOMERS VALUES (7, 'Nakamura', 45, 'Osaka', 10000.00 );
そうするとこのようになります。
+----+----------+-----+-----------+----------+ | ID | NAME | AGE | ADDRESS | SALARY | +----+----------+-----+-----------+----------+ | 1 | Ramesh | 32 | Ahmedabad | 2000.00 | | 2 | Khilan | 25 | Delhi | 1500.00 | | 3 | kaushik | 23 | Kota | 2000.00 | | 4 | Chaitali | 25 | Mumbai | 6500.00 | | 5 | Hardik | 27 | Bhopal | 8500.00 | | 6 | Komal | 22 | MP | 4500.00 | | 7 | Nakamura | 45 | Osaka | 10000.00 | +----+----------+-----+-----------+----------+
このようにINSERT文で新しく行を追加することができるんですね。覚えておきましょう!
ちなみに規則性はわかりましたか?(ID,NAME,AGE,ADDRESS,SALARY)は事前にできているんでNakamuraがINSERTされる時は特に必要なくなり、(ID,NAME,AGE,ADDRESS,SALARY)の順番で入力されるだけなんですね。