LoginSignup
1
1

データベースを基本からまとめてみた【SQL入門】

Last updated at Posted at 2023-03-09

データベースとは?

  • データベースを一言で表現するならデータの貯蔵庫です。
  • データベースは常に変化する。どのように処理をするかと言うアルゴリズムの部分は、Javaなどのアプリケーションにデータの部分はデータベースにそれぞれ切り分けて管理する。

image.png

クエリとは?

データベースに対する命令文のこと。

①SELECT この列(項目から取り出す)
②FROM この表(テーブル)から
③WHERE この条件で
;(最後はセミコロンで締める)

※② ⇨ ③ → ① の順序で目を通す

JOINとは?

2つのテーブルを結合すること

JOIN句:結合条件に当てはまるものだけをリストアップ(当てはまらないものを除外する)

SELECT この列(項目から取り出す)
FROM テーブル名(表A)
JOIN 繋げるテーブル名(表B)
ON 繋げる条件

テーブル

  • データベース内は複数の表のようなもので構成されていて、この表のようなものを『テーブル』と言い、意味的なまとまりを持ったデータを整理・管理する。

  • テーブルにおける行のことを『レコード』、列のことを『カラム』、1つ1つのデータのことを『フィールド』と言う。

  • データベースで管理するデータはプログラミング同様に型を持つ。型はカラムごとに設定可能で、以下のようなものがある。
    ○ 整数型 INT、BIGINTなど
    ○ 小数点数型 DOBULE,FLOAT
    ○ 文字列型 CHAR VARCHAR
    ○ 日時系 DATE TIMESTAMP

  • 型以外にもカラムごとに設定できる代表的なもの
    ○ 主キー(PRIMARY KEY)・・・データの整合性を守るための制約。カラム内でデータの重複とNULL(データなし)を認めない。
    ○ NOT NULL・・・カラム内でNULL(データなし)を認めない。

主キー(PRIMARY KEY)の重要性

  • レコードを一意に識別可能

image.png

データベース管理システム(DBMS)

  • データベースの管理を専門で行うソフトウェアを『データベース管理システム(DBMS:Database Management System)』と言う。データを最適な状態に保つ、Javaなどのアプリケーションからのアクセスに応える等の役割を担う。
    ○ データ操作
    アプリケーションから要求されたデータ操作(検索・挿入・更新・削除)を実行
    ○ データの整合性の維持
    不正なデータやデータ同士の関係性が崩れないようにチェックする。
    ○ 復旧障害
    データベースに障害が発生した時に回復処理を行う
    ○ 機密保護
    セキュリティを設けることで不正アクセスやデータの破壊を防ぐ
    ○ 同時実行制御
    複数のユーザーが同時に同じデータにアクセスすることを防ぐことでデータに矛盾が生じることを未然に防ぐ

image.png

RDBMS

  • テーブルを繋いだデータ同士の結び付きのことをリレーションシップと言う。またこのリレーションシップを保持することで、複数のテーブル同士を関連付けて管理するDBMSのことを『RDBMS(Relational DataBase Management System)と言う。

  • オープンソースで一般的なRDBMSとしてMySQLやPostgreSQLが挙げられ、小規模なアプリで頻繁に使用される。
    ※ 無料で使用可能だが、別料金を支払えばサポートも受けられる

RDBMSの構築と利用

  • RDBMSにおいて複数のテーブルを管理する領域を『スキーマ』といい、データベースの構築はスキーマを作るところから始まる

参考サイト

【SQL】未経験者もこれ一本でOK!MySQLで学ぶ「SQL」「データベース基礎」講座【プログラミング初心者向け】
データベースの用語を理解しよう 「テーブル」「レコード」「カラム」「フィールド」とは?
データベースの構造はどうなっているの?

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1