データベース

【MySQL入門③】データベースの基本操作CRUDを解説!

データベース

MySQL

MySQLの環境構築ができたら、早速データベースを触ってみます。
MySQLは、SQL文と呼ばれるデータベースへの命令文を使って、データベースの操作を行います。
今回は、CRUDのSQL文を一通り簡単に紹介します。

CRUD

データベースの基本操作は4つあり、CRUDと呼ばれています。
CRUDには、それぞれSQL文の書き方が存在します。

SQL文CRUD機能
INSERT文Createデータ追加
SELECT文Readデータ取得
UPDATE文Updateデータ更新
DELETE文Deleteデータ削除

今回は、ユーザーのプロフィールをデータベースで管理してみます。

データベース作成

データベースの基本操作を行う前に、データベースを作成する必要があります。
1プロジェクトに1データベースの認識で大丈夫です。そのデータベースの中に、テーブルが複数存在するイメージです。

データベース名は自分で好きな名前を付けてください。

CREATE DATABASE データベース名;

データベースが作成できたかどうかは、データベース一覧を表示することで確認できます。

SHOW DATABASES;

テーブル作成

新しくテーブルを作成します。
テーブルを作成する際に、テーブル内に作成するカラム名とそのデータ型を指定します。
カラム名は自分で自由に命名して良いです。ただ、カラム名からデータの中身がわかる様な名前にしてください。

CREATE TABLE テーブル名 (カラム名 データ型);

カラムを複数作成する場合は、カンマで区切ってください。
データ型を指定する際に、型によっては最大文字数を指定することができます。
「INT(5)」だと「int型で最大5桁」になります。
test_tableというテーブルを作成し、「id, name, age, address, created_at」をカラムとして定義します。

CREATE TABLE test_table (id INT(5), name VARCHAR(31), age INT(3), address VARCHAR(51), created_at DATETIME);

<作成テーブルイメージ>

CRUD

データ追加

INSERT文を使えば、作成されているテーブルに新規レコードを挿入することができます。

INSERT INTO テーブル名 (カラム名) VALUES (値);

テーブル名とカラム名を指定して、カラムに対応する値を書きます。
さらに、カンマ区切りで一度に複数レコードを追加することができます。

カラム値1値2
id12
name‘山田太郎’‘佐藤花子’
age2532
address‘東京都〜’‘神奈川県〜’
created_atnow()now()

※now()は現在時刻を自動で入れてくれるメソッド(関数)です。

INSERT INTO test_table (id, name, age, address, created_at) VALUES (1, '山田太郎', 25, '東京都〜', now()), (2, '佐藤花子', 32, '神奈川県〜', now());

<テーブルイメージ>

データ取得

SELECT文でテーブル内のレコードを取得することができます。

SELECT カラム名 FROM テーブル名;

指定したカラムのみデータを取得できます。
address以外のカラムを指定してSELECTしてみます。

SELECT id, name, age, created_at FROM test_table;

<取得結果イメージ>

WHERE句

WHERE句を使用することで、取得したレコードの絞り込みが可能になります。
年齢が30以上のレコードだけ取得したい場合

SELECT id, name, age, created_at FROM test_table WHERE age > 30;

<取得結果イメージ>

データ更新

UPDATE文でテーブル内のレコードを更新することができる。

UPDATE テーブル名 SET カラム名 = 値;

「更新したいカラム名=更新したいデータ」でレコードを更新するが、WHERE句を付けないとテーブル内の全レコードを更新することになるので注意が必要です。

UPDATE test_table SET address = '福島県〜' WHERE id = 1;

<更新イメージ>

データ削除

DELETE文でテーブル内のデータを削除することができる。

DELETE FROM テーブル名;

UPDATE文と同様に、WHERE句を指定しないとテーブル内の全レコードを削除するので、注意が必要です。

DELETE FROM test_table WHERE id = 1;

<削除イメージ>

まとめ

データベースの基本操作を一通り開設しました。
自分で自由にテーブル作って、データ追加や更新を色々試してみてください。

タイトルとURLをコピーしました