0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

DBについて

Posted at

1.概要

DBを使用したのでまとめます。

2.DB(datebase)とは

データを管理、保存するための仕組みです。
例えば、都道府県を管理するデータベースがあるとします。
このベータベースには次のような情報が保存されています。

  • 都道府県コード
  • 都道府県名
  • 県庁所在地
  • 登録された日付
  • 更新された日付

データベース内の「都道府県を管理する構造」をテーブルです。
また、テーブル内の「都道府県コード」「都道府県名」「県庁所在地」「登録された日付」「更新された日付」などの各項目の情報はカラムです。
各都道府県には、これらのカラムに対応する情報が保存されています。各都道府県のデータがレコードです。

北海道レコードの例

以下は、北海道のレコードの例です

  • 都道府県コードカラム: 01
  • 都道府県名カラム: 北海道
  • 県庁所在地カラム: 札幌市
  • 登録された日付カラム: 2000/01/01
  • 更新された日付カラム: 2025/01/01

3.RDS(relational database servise)とは

RDS(リレーショナルデータベースサービス)はシステム内のデータベースを効率的に管理し、複数のテーブル間でデータを紐づけるための仕組みです。
その際に重要なのがキーです。今回は3つのキーについて説明します。


1.主キー(Primary Key)

主キーは、データを一意に識別するために使用されます。主キーは条件があります。

  • 中身が入っていること(nullではない)
  • 中身が一意であること(重複がない)

ひとつのテーブルつき一個まで設定できます。
主キーとしてよく使用されるカラム名がidです。例えば、users テーブルの場合

id name mail
1 tarou tarou@example.exe
2 hanako hanako@example.exe

ここで、id が主キーとしてデータを一意に識別します。


2.外部キー(Foreign Key)

外部キーは、あるテーブルのカラムが別のテーブルの主キーを参照することによりテーブル間の関連性を構築する。これによりデータの整合性を取ることができる。

例:社員と部署のデータ

  • 社員テーブルにある「部署カラム」は、部署テーブルを参照する
  • 外部キーを設定することで、「部署コード」が部署テーブルに存在するものだけ登録可能になります

3.ユニークキー(Unique Key)

ユニークキーは、データの重複を許さないキーです。主キーと似ていますが違いは、nullを許容するかや複数設定可能な点です。

例:ログインに必要な情報など

  • ログインにmailを入力する際に、複数あると正しいパスワードを判定できなくなるため mailはユニークキーにする

3.安全な値をいれるために

デフォルトの状態だと様々な値を入力できます。しかし、想定していないデータが入力されてしまうとエラーの原因やシステムが重くなってしまう原因になります。これを未然に防ぐための対策を3つ説明します。

1. トランザクション (Transaction)

トランザクション とは、変更したいデータを一時的に保留し、すべての作業が完了した場合にのみ、実際のテーブルに反映させるデータベースの機能です。
これを使用することで、不完全なデータや不整合なデータが入力されることを防ぎます。

2.nullを許容しない

データベースでは、カラムに NULL (データが存在しない状態) を許容するかどうか設定できます。
NULL を許容しない設定にすることで、必ずデータが入力されているかをチェックし、空のデータが保存されることを防ぎます。

バリデーション (Validation)

バリデーション は、入力されたデータの値を制限するバックエンド側の仕組みです。
例えば、文字数やデータ形式、範囲などを指定してチェックできます。これにより、想定外のデータが保存されることを防ぎます。

まとめ

  • データベースには、テーブル、カラム、レコードがあります
  • RDSにはキーがあり、キーを使うことによりデータベースの整合性を取ることができます
  • 不正なデータを防ぐ仕組みがあります。
0
0
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
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?