ホーム

正規化理論について

データベース

正規化とは データの重複をなくし、データの論理的不整合を防ぐように設計すること。 前提 キー 主キー 行を一意に識別する識別子 複合キー 複数の属性を組み合わせて構成される主キー 外部キー 別のテーブルを参照するためのキー 候補キー 行を一意に識別できる性質を持つ属性の集合で、既約であり、極小(必要最小限の属性数)であるもの スーパーキー 行を一意に識別できる性質を持つ属性と余分...

正規化理論 正規化

Indexとはなにか

データベース

インデックスとは テーブルに格納されているレコードを高速に取り出すための仕組み 以下のようなO(n)問題を抱えたクエリがあるとする。 SELECT * FROM users WHERE first_name = ‘Tom’ このクエリのパフォーマンスを上げるためには、以下のようにIndexを貼る。 ALTER TABLE users ADD INDEX (first_name) メリット・デメリッ...

DB インデックス MySQL

SQLアンチパターン

データベース

SQLアンチパターンを読んだ。 定番of定番。分かりやすい解説でアンチパターンが紹介されている。 ...

DB sql

初めてのSQL 第3版

データベース

初めてのSQL 第3版を読んだ。 SQL入門書として分かりやすい。駆け出しの時に読んでおけば良かった。基本的なことを振り返るにもちょうどよい。 ...

DB sql

理論から学ぶデータベース実践入門 ~リレーショナルモデルによる効率的なSQL

データベース

理論から学ぶデータベース実践入門 ~リレーショナルモデルによる効率的なSQL (WEB+DB PRESS plus)を読んだ。 理論から学ぶことでRDBに対する向き合い方、考え方を整理することができる。集合論や論理学は理解しきれていないので今後の課題。 ...

DB sql

DB設計におけるNULLについて

データベース

NULLとは 「値が存在しない」または「値が不明」ということを示す。 値ではないため値のように比較できない。 空集合(要素が0個の集合)ではなく、存在しない集合と見なされる。 リレーショナルモデルに反するNULL リレーショナルモデルは閉世界仮説(真であると判明しないものは全て偽であると仮定すること)に基づいており、NULLはこれに反する。 リレーショナルモデルでは2値論理が元となっているため、真...

DB