データベース(MySQL)チートシート

私は、仕事柄リアルタイム処理が多いのでデータベースを使う機会がありません。
ただ、自分がwebアプリを作る上でDBは必要だと思ったので学び始めました(エンジニアとしても必須だと思われる)。
そこで学んだコマンドを備忘録がてら記録しています。
DBに慣れていないので、Excelで言うところの何を示しているのか、も記載しています。
参考書籍は「基礎からのMySQL 第3版」です。
2021年1月9日更新
2021年1月11日更新
MySQLの始め方に関するチートシート
MySQLモニタの起動
mysql -u <ユーザ名> -p<パスワード>
pの後には半角スペースを入れないのが注意点です。
上記はコマンドプロンプトにパスワードが見えてしまうので、下記が推奨されています。
mysql -u <ユーザ名> -p
この後にパスワードを打ち込む形式です。
Excelで言うところの、オフィスにログインしてExcelを起動した、といった感じでしょうか。
データベースの作成
CREATE DATABASE <データベース名>;
データベースの作成。
Excelで言うところの、新規ブックを作成、といった感じでしょうか。
データベースの確認
SHOW DATABASES;
Excelで言うところの、ブックの一覧を表示させる、といった感じでしょうか。
データベースの指定
use <データベース名>
Exceで言うところの、下部のシート名をクリックする、といった感じでしょうか。
現在使用しているデータベースの表示
SELECT DATABASE();
Excelで言うところの、現在使用しているシート名を表示する、といった感じでしょうか。
テーブルの作成
CREATE TABLE テーブル名(カラム名0 データ型0, カラム名1 データ型1, …);
Excelで言うところの、データの入力規則の作成、といった感じでしょうか。
普段Excelで使う分にはあまり意識しませんが、DB作成時には重要です。
入れるデータの定義(カラム名とデータ型)をするコマンドです。
これでようやっとデータベースの外枠が出来上がり、データを入れる準備ができました。
連続番号が入力されるカラムにする方法
CREATE TABLE テーブル名(カラム名0 INT AUTO_INCREMENT PRIMARY KEY, カラム名1....)
データ型は整数型(INT, TINYINT, SMALLLINT)で、連番にする宣言を行う。
また、AUTO_INCREMENTは、重複が許されないので、ユニークにする必要がある。
全てのテーブルの表示
SHOW TABELES;
Excelで言うところの、すべてのシート名の表示、といった感じでしょうか。
テーブルのカラム構造の確認
DESC テーブル名;
または、
DESCRIBE テーブル名;
Excelで言うところの、入力規則の表示、といった感じでしょうか。
テーブルの作成で行った、カラム名とデータ型の表示を行います。
テーブルにデータを挿入する
INSERT INTO テーブル名 VALUES(データ1, データ2);
または
INSERT INTO テーブル名 (カラム名) VALUES(データ);
または
INSERT INTO テーブル名 (カラム名1, カラム名2,…) VALUES(データ1, データ2, …),(データ1, データ2, …),(データ1, データ2, …)…:
Excelで言うところの、データを入れる、といった感じでしょうか。
データの表示
SELECT カラム名1,カラム名2, ,,,FROM テーブル名;
すべて表示したいときは、下記のようにアスタリスクを使う。
SELECT * FROM テーブル名;
削除に関するチートシート
レコードの全削除
DELETE FROM テーブル名;
Excelで言うところの、CTRL+A+DELETE、といった感じでしょうか。
テーブルを削除する
DROP TABLE テーブル名;
Excelで言うところの、シートの削除、といった感じでしょうか。
データベースの削除
DROP DATABASE データベース名;
Excelで言うところの、ブックの削除、といった感じでしょうか。
MySQLの場合は後戻りできないので、注意が必要です。