SQLによるデータ操作基本|データベース・テーブル作成についてわかりやすく説明します。

本記事にはプロモーションが含まれています。

軽くて安いのに大容量!カフェ作業も捗る!プログラミングに最適なPCをお探しなら【おすすめはこちら

  • データベースを学習したいけど何から始めたら良いのかわからない
  • プログラミングスクールでデータベースを学んだけど忘れた
  • データベースについてキチンと学び直したい

このようなお悩みをお持ちの方もいると思います。

この記事ではデータベースとテーブル作成、データの追加や更新、削除について初心者向けに解説します。

今回はフードメニューのデータベースの作成を学習していきましょう!

▼データベース・テーブルの作成方法についてはこちらの動画でも詳しく解説しています!

YouTube動画

【知識0からMySQL】データベースとテーブル作成の基本

データベース・テーブル作成の基礎について、初心者にもわかりやすく解説しています!

▼MySQL Workbenchのインストール・設定に関してはこちらをご参照ください。

データベースを作成する

左上の赤丸をクリックして新しいエディタを開きます。
以下のコードを記述してエディタの上の左側のカミナリマークをクリックします。

左側の「SCHEMAS」のところに「foodmenu_db」というデータベースができていると思います。
もし見当たらなかったらリフレッシュボタンを押してみてください。

下の「Action Output」に緑のチェックが入っていればOKです。
エラーの場合は赤い✖とエラー内容が表示されます。

MySQLテーブル作成時の制約

PK
Primary Key
プライマリキーは1つのテーブルの中で
1つしか設定できない
カラム内に、同じ値の重複が
あってはいけない
NULL値を設定できない
NN
Not Null
カラムの値が NULL であることを
許可しない
UQ
Unique Key
テーブル内で同じ値のデータの重複を
許さないカラムに設定する
(メールアドレスなど)
1つのテーブル内で複数設定できる
NULL値を許可することも可能
(NULL値は重複してもよい)
B
Binary
Column
カラム値の照合順序を大文字小文字の
区別ありにする
AI
Auto
Increment
カラムに自動的に連番を振る
Defaultカラムのデフォルト値を指定する

テーブルの作成

「menu_types」と「foodname」の2つのテーブルを 「foodmenu_db」 データベース内に作成します。

menu_types テーブル

idname
メイン
ドリンク
デザート

foodname テーブル

カラム名データ型主キー自動
連番
NULL
id整数
name可変長文字列
(最大20字)
price 整数
foodtype_id 整数
intro可変長文字列
(最大255字)

テーブルの削除

DROP TABLE テーブル名;

テーブルの中身を削除

TRUNCATE テーブル名;

テーブル一覧の表示

SHOW TABLES;

テーブルの構造を表示

DESCRIBE テーブル名 ;

データの入力(初期値の入力)

方法1

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

「menu_types 」テーブルにデータを追加します。

  • 全てのカラムの値をテーブルの定義通りの順番で指定する必要がある
  • 数値やNULLはそのまま記述する
  • 文字列や日時はシングルクォートかダブルクォートで囲む

方法2

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

「foodname」 テーブルにデータを追加します。

INSERT INTO foodname
(name, price, intro)
VALUES
(‘ハンバーグ’, 980, ‘赤ワインがしっかり効いている大人の味です。ご飯やパンに合うデミグラスソースが最高!’),
(‘パスタ’, 800, ‘ほうれん草とエリンギでビタミンたっぷり! ベーコンが隠し味になる、和風醤油パスタです ‘),
(‘ブレンドコーヒー’, 800, ‘当店オリジナルのブレンドコーヒー’),
(‘オレンジジュース’, 800, ”),
(‘生ビール’, 800, ”),
(‘バニラアイス’, 800, ‘北海道産のミルクを使ったコクのあるバニラアイス’),
(‘シーフードピラフ’, 800, ”),
(‘チョコレートブラウニー’, 450, ”);

NOT NULL に設定されておりDEFAULTが設定されていないカラムは省略不可
AUTO_INCREMENTが設定されているカラムは省略可

データの更新・追加・削除

ハンバーグの値段を800円に変更します。

(複数のカラムを同時に更新する場合はカンマで区切って列挙する)

UPDATE foodname
SET
price=1200
WHERE id=1;

オレンジジュースの商品紹介を設定します。

UPDATE foodname
SET
intro=’ご注文を受けてから絞る生のオレンジジュースです。’
WHERE id=4;

シーフードピラフを「foodname」テーブルから削除します。

削除したデータは元に戻すことができません!
WHEREで削除データを指定しないと全てのデータが削除されてしまいます!
「status」など 状態を管理するためのカラムを用意しておき 削除状態に更新する方法(論理削除)もあります。

DELETE FROM foodname
WHERE id=7;

データの取得

商品名 と 値段 のカラムのみを取得して表示します。

SELECT name, price
FROM foodname;

値段が 700円以上のメニューを検索します。

SELECT * FROM foodname
WHERE price>=700;

名前に「ブ」の字を含む会員のリストを取得します。

SELECT * FROM foodname
WHERE name
LIKE ‘%ブ%’;

全メニューの平均価格を取得します。

SELECT AVG(price)
FROM foodname ;

全メニューを価格の安い順に並べて取得します。

SELECT * FROM members
ORDER BY
price ASC;

全メニューを価格の安い順に並べて先頭から 2つのデータを取得します。

SELECT * FROM foodname
ORDER BY
price ASC
LIMIT 2;

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