MySQLでデータを追加する(insert into の使い方)

データを追加するには「INSERT INTO」文を使います。

ここでは MySQLコマンド「INSERT INTO」の具体的な使い方を解説していきます。

 

「INSERT INTO」の基本

以下のコマンドを実行すると、テーブルにデータを追加することができます。

INSERT INTO テーブル名 (カラム1の名前, カラム2の名前, ......) VALUES (カラム1の値, カラム2の値, ......);

 

データを追加する

実際にMySQLサーバーに接続し、動作を確認してみましょう。

 

その前に以下のコマンドで「cooking」という名前のデータベースをあらかじめ作成し、その中に「menus」という名前のテーブルを作成しておきます。

CREATE DATABASE cooking;
USE cooking;
CREATE TABLE menus (id INT, name VARCHAR(100));
メモ

CREATE DATABASE 文の詳しい使い方はこちら

USE 文の詳しい使い方はこちら

CREATE TABLE 文の詳しい使い方はこちら

 

それでは「menus」テーブルに、「id: 1, name: カレー」のデータ(レコード)を追加してみましょう。コマンドは以下。

INSERT INTO menus (id, name) VALUES (1, 'カレー');

 

コマンドを実行して、Query OK という表示が出てきたら、データが追加できたことになります。

 

追加したデータは SELECT 文を使って、以下のように確認することができます。

SELECT * FROM menus;

メモ

SELECT 文の使い方は、以降の記事で詳しく解説しています。詳しくはこちら

 

ここまでが「INSERT INTO」の基本!

理解をさらに深めたい方は以下からの内容もご覧ください。

 

複数のデータをまとめて追加する

以下のコマンドで、複数のデータをまとめて追加することもできます。

INSERT INTO テーブル名 (カラム1の名前, カラム2の名前, ......) VALUES
(カラム1の値, カラム2の値, ......),
(カラム1の値, カラム2の値, ......),
......;

 

3行のデータをまとめて追加するコマンド例

INSERT INTO menus (id, name) VALUES (1, 'カレー'), (2, 'ハンバーグ'), (3, 'チャーハン');

 

INSERT INTO 文の省略形

全カラムに順番に値をセットする場合は、カラム名を省略して、以下のように記述することもできます。

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

 

カラム名を省略した場合のコマンド例

INSERT INTO menus VALUES (1, 'カレー');

 

SETを使った書式

INSERT INTO テーブル名 SET カラム1の名前 = カラム1の値, カラム2の名前 = カラム2の値, ......;

 

SETを使ったコマンド例

INSERT INTO menus SET id = 1, name = 'カレー';

 

他のテーブルから抽出したデータを追加

以下のように SELECT文と組み合わせて、他のテーブルから抽出したデータを追加することができます。

INSERT INTO テーブル名 (カラム1の名前, カラム2の名前, ......) SELECT文;

 

「menus2」テーブルから取得したデータを「menus」テーブルに追加するコマンド例

INSERT INTO menus (id, name) SELECT * from menus2;
メモ

SELECT 文の使い方は、以降の記事で詳しく解説しています。詳しくはこちら

 

まとめ

以上、MySQLコマンド「INSERT INTO」の使い方でした!

 

ここまでの内容をまとめておきます。

  • 「INSERT INTO」コマンドでデータを追加することができる。

 

MySQL入門メニュー