[DB / MySQL] データベースを扱う基本SQL文一覧とSQL文の書き方
ここでは、データベースを操作するためのデータベース言語、SQL文の基本的な書き方と、SQL文の一覧について説明する。
基本的なSQL文「INSERT, SELECT, UPDATE, DELETE」の使い方から、データベースとテーブル操作のためのshow databases, create tableなどの使い方も説明する。
MySQLをインストール
MySQLをまだインストールしていない方はこちらから。
[st-card myclass="" id=1845 label="" pc_height="" name="" bgcolor="" color="" fontawesome="" readmore=“on”]
データベースに接続
まずはデータベースに接続する。
`passwordなし mysql -u rootpasswordあり mysql -u root -p`
- -u: ユーザーを指定
- -p: パスワードを使用してログイン

mysql>と確認できれば、OK。
データベースの作成
次に、データベースを作成する。
`create database データベース名;example// create database hikingtest;`
今回は、hikingtestという名前でデータベースを作成。

データベースの一覧を確認
作成後、下記のコマンドで、データベースが作成されているか確認。
`show databases;`


データベースを削除
dropでデータベースを消す。hikingtestデータベースを消してみる。
`drop database データベース名;`


使用するデータベースを選択
どのデータベースを使うかを指定する時はuseを使う。
`use データベース名;`


テーブル操作
次にテーブル操作を行う。
テーブルを作成
`CREATE TABLE テーブルの名前;
カラム1 データ型 オプション,
カラム2 データ型 オプション,
カラム3 データ型 オプション,
カラム4 データ型 オプション
);`実際に下のようなグラフを作ってみる。

`CREATE TABLE hikers(
hikers_id int PRIMARY KEY NOT NULL,
name VARCHAR(10),
address VARCHAR(40),
tel VARCHAR(20)
);`
データベースはhikersを選択しているので、テーブルはhikersデータベースの中に作られる。
テーブルはまだ具体的にはデータが入っていないので、図のように、項目だけできたと考えれば良い。

カラムの名前を設定
カラムは、自分が用意したいデータの種類に応じて作成する。
上のhikersテーブルなら、
- 登山者ID:id
- 名前:name
- 住所:address
- 電話番号:tel
という形で設定。
データ型の用意
自分の用意したいデータによって、データ型を用意する。
今回であれば
- 登山者ID:数値を入れるint
- 名前:文字列を入れる時に使うCHARやVARCHAR
という具合に用意しておく。
`//example ( )の中身は最大文字数 name VARCHAR(10)`

オプションの用意
オプションによって、より詳細な設定をすることができる。
いくつか例をあげる。
- unique : 重複する値は入れられない。e-mailとか、アカウント名に使える。
- default : テーブルにデータを入れる際、値が何も指定されなかった時に、デフォルトで入れる値を決められる。
- not null : nullを許さない。つまり値の入力を必須にする
テーブルを確認
作成したテーブルや、既存のテーブルが何があるかを確認できる。
`show tables;`


データ操作
次にデータ操作の命令文を説明する。
SQL文は基本的に四種類の命令文に分けることができる。
命令文は下記の4つ。
- INSERT : データを挿入する
- SELECT : データを取得する
- UPDATE : データを変更する
- DELETE : データを削除する
テーブルにデータを挿入する
テーブルにデータを入れる時はINSERTを使う。
`INSERT INTO テーブル (カラム1, カラム2...) VALUES (データ1, データ2...);`
実際に入れてみる。
`INSERT INTO hikers (hikers_id, name, address, tel) VALUES (1, "山田太郎", "東京都品川区", "090-1234-5678"), (2, "田中花子", "東京都渋谷区", "080-5555-9999"), (3, "鈴木新二", "神奈川県横浜市","070-2626-6262"), (4, "南雲恵子", "埼玉県川越市", "080-0000-0000");`

テーブルからデータを取得する
データを入れたら、テーブルからデータを取得する。
`SELECT * FROM テーブル名;`


データを一部だけ取得する
データを一部だけ取得することができる。
今回は例として、名前と電話番号だけを取り出してみる。
`SELECT カラム名 FROM テーブル名;//example SELECT name, tel FROM hikers;`

条件をつけてデータを取得
「ID3の人の情報だけ取得」というように条件をつけて情報を取得することもできる。
`SELECT * FROM テーブル名 WHERE カラム名 = データ名;//example SELECT * FROM hikers WHERE hikers_id = 3;`

データを並び替えて取得
`//逆順 SELECT * FROM テーブル名 ORDER BY カラム名 DESC; //そのまま SELECT * FROM テーブル名 ORDER BY カラム名 ASC;`

データを更新する
データを更新する時はUPDATEを使う。
`UPDATE テーブル名 SET カラム名 = '○○○○○○' WHERE 条件//Example UPDATE hikers SET name = ‘アップデート!’ WHERE hikers_id = 3;`


データを削除する
データを削除する時は、DELETEを使う。
`DELETE FROM テーブル名 WHERE 条件//example DELETE FROM hikers WHERE hikers_id =3`


以上が基本的なSQL文の書き方となる。
全体像を把握する
コンピューターについての全体像も把握しておくと、データベースのさらなる理解に役立つ。
[st-card myclass="" id=4587 label="" pc_height="" name="" bgcolor="" color="" fontawesome="" readmore=“on”]