hiyoko-programingの日記

プログラミングを勉強したてのひよっ子。   エンジニア目指して勉強中。

テーブルに保存するデータの操作

ターミナルを再起動した場合は以下のコマンドからデータベースを選択した場面まで進む

mysqlに接続

1
mysql -u root

・データベースを選択

1
USE sqltest;

データを登録してみる

まず、データの操作として最も基本的なのは、データの登録である。

データの登録にはINSERT文を使用する。

 INSERT文

テーブルにデータを登録するためのSQL文。
INSERT文は全てのカラムに値を入れるか否かで、以下のように文法が変化する。

 

・全てのカラムに値を入れる場合

1
INSERT INTO テーブル名 VALUES(1, 2, 3);

・特定のカラムのみに値を入れる場合

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

 

実際にこの2つの方法を用いてデータの登録を行ってみる。

まずは全てのカラムに値を入れる場合から。

 mysqlで以下のSQL文を実行

1
INSERT INTO goods VALUES(1, "ペン", 120);

以下のように表示がされれば正常にSQL文が実行されている。

https://tech-master.s3.amazonaws.com/uploads/curriculums//eaa873bf32fc884991436847c39f69bd.png

本当にデータが登録されているかも確認する。

1
SELECT * FROM goods;

 SELECT *という、SQL文が出てきた。これに関しては次で扱うので、いまはテーブルにあるレコードを全て表示するSQL、と考えて進む。

 

以下のように、idに1、nameにペン、priceに120が入力され、データが登録されたことが確認できる。

https://tech-master.s3.amazonaws.com/uploads/curriculums//e78fa87004a121e20a23de0a70957ce5.png

 

続いて、特定のカラムのみに値を入れる場合を見てみる。

1
INSERT INTO goods(id, name) VALUES(2, "消しゴム");

以下のように表示がされれば正常にSQL文が実行されている。

https://tech-master.s3.amazonaws.com/uploads/curriculums//5084d1c6d1d82ceddd3949e6374cdd0c.png

もう一度以下のSQL文を実行し、どのようにデータが追加されたかを確認。

1
SELECT * FROM goods;

実行結果を見てみると、以下のように指定したカラムにデータが追加されていることが分かる。

https://tech-master.s3.amazonaws.com/uploads/curriculums//9744a3e4334dbdf10fed7736c6360e83.png

指定していないカラムについてはNULLが入っている。
これはカラムの設定で、デフォルト値というものがNULLに設定されているから。

 デフォルト値

デフォルト値とは、レコードを生成するときにカラムに入れるものを指定しなかった場合、そのカラムに入る値のこと。

このデフォルト値はSHOW columns FROM goods;を実行したときの結果にも記載がされていた。

https://tech-master.s3.amazonaws.com/uploads/curriculums//a9a11f0cbe4a2d61fb2fd5b3d7d4c107.png

デフォルト値を設定していないカラムのデフォルト値はNULLとなる。

そのため、今回追加したカラムもデフォルト値はNULLになっており、先ほど追加したレコードのpriceカラムにもNULLが挿入されたということ。

データを更新してみる

 UPDATE文

データの更新にはUPDATE文を使用。

UPDATE文を使用する際は、以下のようにテーブル名、変更内容、条件を指定する。

1
UPDATE テーブル名 SET 変更内容 WHERE 条件;


実際に、先ほど追加したidが2のレコードを、priceが100となるように更新してみる。

1
UPDATE goods SET price = 100 WHERE id = 2;

以下のように表示がされれば正常にSQL文が実行されている。

https://tech-master.s3.amazonaws.com/uploads/curriculums//f5c78a362cf8382993364fc72d83cfde.png

以下のSQL文を実行し、テーブルの状況を確認。

1
SELECT * FROM goods;

以下のように、idが2のレコードのpriceが100に更新されている。

https://tech-master.s3.amazonaws.com/uploads/curriculums//071fb8b9af35c313b0fec8d5cdbb217f.png

データを削除してみる

 DELETE文

テーブルにあるデータを削除するためにはDELETE文を使用。

DELETE文を使用する際は以下のような文法でSQL文を記述する。

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

実際にidが2のレコードを削除してみる。

1
DELETE FROM goods WHERE id = 2;

以下のように表示がされれば正常にSQL文が実行されている。

https://tech-master.s3.amazonaws.com/uploads/curriculums//d217993fdedd1c6ef3fcc932f0b66d05.png

DELETE文の実行が出来たら再度、以下のSQL文を実行してテーブルの状況を確認。

1
SELECT * FROM goods;

すると、以下のようにidが2の行がなくなり、レコードが1つとなっている。
これでデータが削除できたことが確認できた。

https://tech-master.s3.amazonaws.com/uploads/curriculums//0adeeec65a8ea87ed7b0f9fcb640af79.png