7.MySQLのテーブルにレコードを挿入してみよう【INSERT文】

レコードを挿入してみよう

MySQLのテーブルにレコードを挿入してみましょう。前回と同じようにtestデータベースの中にtitleテーブルを作成した状態から始めます。

5.MySQLでデータベースを作成してみよう

6.MySQLデータベースにテーブルを作成してみよう

現在の状態

レコードの挿入

レコードを挿入するには次のようにINSERT文を使います。

INSERT INTO テーブル名 (カラム名1, カラム名2) VALUES (値1-1, "値1-2");

値が文字列の場合はシングルクォーテーションまたはダブルクォーテーションで囲います。

実際の例としてtitlesテーブルにレコードを挿入してみましょう。

INSERT INTO titles (author_id, post_title) VALUES (1, "What is MySQL");
テーブルにレコードを挿入

Query OK, と表示され、レコードが挿入されました。

レコードは複数まとめて挿入することもできます。

まとめて挿入する時は

INSERT INTO テーブル名 (カラム名1, カラム名2) VALUES (値1-1, "値1-2"), (値2-1, "値2-2");

と、VALUESのあとに続けてカンマ区切りで記述します。

実際に複数のレコードをまとめて挿入してみましょう。

INSERT INTO titles (author_id, post_title) VALUES (2, "What is SQL"), (3, "How do I run MySQL on Docker");
複数のレコードをまとめて挿入

こちらもQuery OK, と表示され、レコードが挿入されました。

レコードの確認

先ほどの操作でレコードがきちんと挿入されているか確認してみましょう。SELECT文を使います。

SELECT * FROM テーブル名;

実際にtitlesテーブルに挿入されているレコードを確認してみましょう。

SELECT * FROM titles;
レコードの一覧の取得

ちゃんと先ほどのレコードが挿入できているのがわかります。

ちなみに * は全ての要素を指定しています。

特定のレコードのみ確認したい時は

SELECT 取得したい要素 FROM テーブル名;

と記述します。

レコードの削除

レコードを削除するにはDELETE文を使います。

DELETE FROM テーブル名 WHERE 条件式;

実際にtitlesテーブルからauthor_idが3のレコードを削除してみましょう。

DELETE FROM titles WHERE author_id = 3;
特定のレコードの削除

Query OK, と表示され、レコードが削除されました。

SELECT文でもう一度titlesテーブルのレコード一覧を取得して確認してみましょう。

SELECT * FROM titles;
レコード一覧を取得

author_idが3のレコードが削除されているのがわかります。

なお、WHERE句で条件を指定しなかった場合、テーブルの全てのレコードが削除されてしまいますので注意しましょう。

次のコマンドを実行するとtitlesテーブルの全てのレコードが削除されます。

DELETE FROM titles;
全てのレコードを削除

SELECT文でレコード一覧を取得すると、Empty set と表示され、全てのレコードがなくなっているのがわかります。

このエントリーをはてなブックマークに追加

コメントを残す

頂いたコメントは一読した後表示させて頂いております。
反映まで数日かかる場合もございますがご了承下さい。