見出し画像

プログラム初心者が”DEV.LAB"を受講してどこまで成長できるかの記録 その8【第7章SQL 〜基本編〜】【ユーザー体験】

DEV.LAB受講生のayakaです:)
今回は第7章 SQL 基本編についてです。

第7章ではSQLの基本について学びました。
まず、プログラミング初心者の私からしたらSQLとは
何かの英語の略称?何なのか、というSQLがどういったものかわからない状態から始まりました。

授業ポイントノート

SQLとは


まず、SQLとは 

  • データベースに格納されている情報を外部からのアクセによって検索したり書き換えたりするための操作言語

  • データベースで使用する言語

*SQLは Structured Query Language の略みたいです。

要するに、SQLはデータベースとコミュニケーションを取るために使われる言語みたいです!

DEV.LAB授業動画より

そして、SQLをデータベースに送るには、上記の図のように、
Javaなどでプログラミングを作り、その中から命令を呼び出すことでデータベースにSQLを送る(命令・処理)ことができます。

次は、現在データ管理ベースモデルの主流になっているリレーショナル・データベースについてです。

リレーショナル・データベース(RDB)とは
複数の表の形式で管理するデータベースのモデルのことで
分野を問わず広く用いられています。
下の図のように、AとCテーブルは青の項目と結びついており、
BとCテーブルは緑の項目と結びついている状態となっています。

DEV.LAB授業動画より

リレーショナル・データベースの特徴としては

  • 複数の表があり、個々の表をテーブルという

  • テーブルは列(colum)と行(row)で構成されている

  • 1つの行は1件のデータに対応している

  • 列はそのデータの要素に対応している

DEV.LAB授業動画より

上記のような感じで、エクセルみたいなものと考えるとわかりやすいかもしれません!

リレーショナル・データベースには2つのキーがあります。
まずは、主キーと呼ばれるものです。
プライマリーキーとも呼ばれることがあり、特徴としては
○ テーブル内の1つ1つのデータが認識可能になる
○ 他の行と値が重複しない
○ 複数ある場合がある
という点です。下の画像がその主キーを表すテーブルになってます

DEV.LAB授業動画より

もう一つは、外部キーまたはフォーリンキーと呼ばれるものです。
こちらは他テーブルのある列の値を格納することで、
その行が他テーブルのどの行と関連しているか示してくれます。

DEV.LAB授業動画より

SQLの基本文法

では、SQLの基本ルールについて簡単に授業で習ったことをまとめます。

基本ルール①
文の途中に改行を入れることができる。

基本ルール②
行の先頭や行の途中に半角の空白を入れることができる

基本ルール③
予約語(SELECTやWHEREなど)を記述するときは、
大文字と小文字の区別はない

基本ルール④
テーブル名や列名に予約語(変数名など)を利用することはできない

SQLのデータの記述ルール

  • 「'」でくくらずに記述されたデータは数値情報

  • 「'」でくくられたデータは基本的に文字列情報

  • 「'」でくくられ、'2020-12-01'のような一定の形式で記述されたデータは日付情報

また、代表的なデータ型も授業で紹介されており、下記がその一覧になります。

DEV.LAB授業動画より

特徴としては
○ テーブルの各列にはデータ型が指定されている
○ 列にはデータ型で指定された種類の情報しか格納できない
という点です。

ここで、固定長(CHAR型)と可変長(VARCHAR型)の違いについても紹介されていました。

☆固定長(CHAR型)の場合
残りの7文字は空白に
郵便番号、桁数が決まっているものに向いている

☆可変長(VARCHAR型)
空白は追加されない
氏名など、桁数が変動する可能性があるものに向いている

とのことです!

SQLの4大命令

最後にSQLの4大命令について説明します。

SQLの4大命令とは

  1. SELECT文

  2. UPDATE文

  3. DELETE文

  4. INSERT文

の4つの文構造のことを指します。

まずは1つ目のSELECT文について
基本構文は下記のようになります。

そして下記の画像のように複数の列を取得するとき、

DEV.LAB授業動画より

このように記述します。

また、SELECT文では'AS'を入れることによって、
別名の定義でも記述することができます。

DEV.LAB授業動画より

ASによる別名の定義をつけるメリットとしては、
わかりにくい列名や長い列名でも、わかりやすく短い別名をつけて利用することができるという点です。

次にUPDATE文について
基本構文は下記のようになります。

DEV.LAB授業動画より

条件付きのUPDATE文として、dogテーブルのname列の'リク'を'ココ'と
変更する場合、下記のようになります。

3つ目にDELETE文の基本構文は下記のようになります。
ただし、WHERE句を入れなかった場合、全てに適用されてしまうため、
全件削除されてしまうので注意が必要です。

最後にINSERT文についてです。
基本構文は下記のようになります。

DEV.LAB授業動画より

上記のテーブルのように、nameに'ペス'、genderに'メス'と追加する場合、
下記のように記述します。

下記のテーブルのように、前列にINSERT文を追加する場合は、

DEV.LAB授業動画より

下記のような記述になります。

SQL4大命令をまとめた画像になります

終わりに…
そもそもSQLという言葉自体、見たことや聞いたことはあったものの、
意味は全く知らなかったのですが、授業では例を使って丁寧に
基本から教えてくださるので、簡単に理解することができました。
今章は基本ということだったので、次回は実用/応用になるのかなと思います。しっかり基本を理解した上で、応用に入りたいと思います!!

私が通っているDEV.LAB(ディラボ)とは…
”一生使えるスキルを学ぶ”ことができる 未経験から現場での活躍を目指す
超実践OJT開発型をおこなっているプログラミングスクールです。
Java × Springを現役エンジニアから学ぶことができ充実したサポートもあります。

この記事が気に入ったらサポートをしてみませんか?