![見出し画像](https://assets.st-note.com/production/uploads/images/52873871/rectangle_large_type_2_70965e81e6aecf65fca65fb2c952a910.png?width=1200)
備忘録5:SQLについて(1/3)-DDL
転職のための3月6日から某スクールにでプログラミング学習を始めた32歳のおっさんです。時系列でHTML⇨CSS⇨Rails & JavaScript &SQLを学習中。
今回はSQLの操作方法について。
※今回使用するのはMySQLです。
学習内容:SQLによるデータベースの操作
1:開幕の自問自答
①SQLってなんすか?
⇨DBを操作するための言語です。
②DBの操作だったら、GUIを使うんじゃあダメなんすか?Sequel Proとか。
⇨なんでも、細かい操作は直接SQLを使った方が良いらしいです。
③具体的には?
⇨用意されてない処理があるとかなんとか。
と、いうわけで今回はSQLについてです。
内容は基礎基礎の基礎です。
2:全体の流れ
⓪DDLとは?????
①ログインする
②データベースを作る・確認・消す
③データベースの指定
④テーブル・カラムの作成・追加・変更・削除
3:DDLとは?????????
DDLとは、SQLが行う命令を分けた物の内の1つ。
大きく分けて、以下3つに分類出来る。
DDL:データの定義 ※Data Definition Language ←今回はこれ
DML:データの操作 ※Data Manipulation Language
DCL:データの制御 ※Data Control Language
そして、DDLには以下のような命令文があります。
大文字でも小文字でもOK。
だがしかし、混同防止に大文字を使うのが通例らしい。
CREATE:データベースやテーブルの作成
ALTER:データベースやテーブルの更新
DROP:データベースやテーブルの削除
4:ログインする
・ログインする
mysql -u root
このようにしてログインを行う。
rootはデフォルトで用意されているユーザー名。パスワードなど無い。
5:データベースを作る・確認・消す
データベースを作る
・データベースを作る
CREATE DATABASE データベース名;
データベースはこの様にして作成する。
文末にはセミコロン「;」が必要。
セミコロンが無い場合、入力は続いていると看做される。
セミコロンを忘れたら、次の行で打てば良い。※緑枠
データベースを確認する
・データベースを確認する
SHOW databases;
データベースの一覧を表示する。
とても沢山ある。SSは早速セミコロンを付け忘れた。
先ほど作ったデータベースもしっかりある。※黄枠
データベースを削除する
・データベースを削除する
DROP DATABASE データベース名;
このようにして削除する。
先ほどあった test と test2 が無くなっている。
それにしても多すぎるので後で整理します。
6:データベースの指定
データベースを指定する
・操作したいデータベースを指定する
USE データベース名;
この様にして指定する。
先ほど削除した testくん には復活してもらいました。
7:テーブル&カラムの作成・確認・変更・削除
テーブルとカラムを作成する
・テーブル&カラムの作り方
CERATE TABLE テーブル名 (カラム名1 カラム名1の型, カラム名2 カラム名2の型, 以降いくつでも)
# カラムの型について
INT:数字を保存する。 ※rails で言う integer
VARCHAR(n):文字列を保存する。 ※rails で言う string. nは文字数を入れる。SSは255文字。
このようにして作成する。
rails で「raild db:migrate」を行うと、裏でこの様なSQLが動くらしいです。
今回は menu というテーブルを作成。
カラムは「id・name・price」。お寿司屋さんかな?????????
テーブルの構造を確認する
・テーブル構造の確認方法
SHOW columns FROM テーブル名;
このように確認する。
すると、railsのマイグレーションファイルのような表記が現れる。
とてもとても分かりやすくてありがたいですね( ˘ω˘)
カラムを追加・変更する
・カラムの追加方法
ALTER TABLE テーブル名 ADD カラム名 カラム名の型
複数追加する場合は、最初の作成時と同様に()を使う。
ALTER TABLE テーブル名 ADD (カラム名1 カラム名1の型, カラム名2 カラム名2の型, 好きなだけ)
この様に追加を行う。
sakana と stock を追加。やっぱりお寿司屋さんじゃないか!!!!!
カラム名を変更する
・カラムの変更を行う
ALTER TABLE テーブル名 CHANGE カラム名 新しいカラム名 新しいカラムの型;
このようにして変更を行う。
カラムって意外と簡単に変わっちゃうんすね。
もっとお堅いイメージでした。
sakana は日本語なので fish に変更。やっぱりお寿司屋さんじゃないか。
カラムを削除する
・カラムを削除する
ALTER TABLE テーブル名 DROP カラム名;
お前を○す(デデン!!
よく考えたらなんの魚かなんて商品名見れば分かるので削除!
カラムに変更を加えるときは ALTER TABLE 。憶えた。・・・憶えた?
「Alter」って日本語訳で「変更」って意味だそうです。はえ^〜。
8:終わり
今回はここまでです。
今回がDDLということは、次回はDMLということです。
普段Rails使ってると忘れちゃいますが、記述が分かり易いおかげか
振り返ると意外と思い出せるのがありがたいですね。SQL。
まぁ、そんなこと言ってられるのも深淵を知らないうちかもですが。
ともあれ続きはまた次回。