skillup

技術ブログ

Database

DBの基礎 テーブルとは

投稿日:

CSSを学習したあとはデータベースの学習などを。

参考図書:「達人に学ぶDB設計指南書」基本的にはこれを読んでいきます。が、現状よくわからないところは飛ばしていきます・・・

テーブルとは?

まずは基本的なところから行きます。

  • プロジェクトの概念を論理的に表現したもの
  • 共通属性をもったレコードの集合体
  • テーブル名はすべて英語の名詞(複数形)で書くことができる。もしできなければどこかが間違っている。

テーブルの構成要素

  • 全ての属性をカラムとして表現できる
  • 主キー(一意に識別できる)を必ず持つ。通常番号や半角英数字の記号(固定長文字列)が入ることが一般的.
  • 複数列の組み合わせで作られる複合キーというものも存在することあり。例:会社ID+社員ID。
  • 通常は外部レコードと接続する外部キーが必要になることが多い。互いに関連している(参照整合性制約)。
  • 外部キーは人間の親子関係のようなもの。互いに関連しているので一方を削除する場合は互いを削除する必要がある。削除順は子→親としなければいけない(合わせて削除する行為をカスケードという。)
  • キーには通常番号や半角英数字などの固定長文字列が入ることが一般的。
  • 外部キーには参照整合性以外にもNOT NULL制約、一意制約、CHECK制約(値の範囲を決める)などが入ることがある。

メモ

  • まずプロジェクトの概念図→そこから論理モデル→物理モデルへと落とす。この物理モデルを実体化したものがテーブル
  • 全ての属性をカラムとして持たせる
  • テーブル間同士が1:1、1:Nになるかいなかをしっかり把握

 

-Database
-

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

dbUnitの使い方

えーJavaで有名なテストツールDBUnitについて。 DbUtilではありませんので間違えないように。(私は最初間違えました・・・) まだ全然使い込んでるわけではありませんがどんなことができるかとい …

no image

エンティティの抽出と主キー決定

主に設計に関することのメモ。 Contents1 業務フロー分析2 エンティティの抽出3 エンティティの関連付け4 主キーの抽出を行う4.1 主キーの特徴4.2 サロゲートキーのメリット4.3 サロゲ …

no image

JPAでのリレーション(アノテーション使用)

JPAでリレーションを管理するとき、最初はアノテーションでやろうとしたんですが、結局やり方がわからずコンストラクタ式をかいて対処してました。 JPAでのリレーションに関して 外部キー制約があるやり方は …

no image

正規化について&EXTRACT

Contents1 正規化とは?2 第一正規化3 SQLネタ EXTRACT 正規化とは? 正確な定義は難しいですが、8割ぐらいあっている定義としては「適切なテーブルに分割すること」です。※ただし正確 …

no image

JPAでのデータベースとの同期

このブログでも何回か書いてきたJPAですが、新規レコードをインサートさせた際IDを取得し、そのIDをもとに何らかのキーを作る、そういう処理があったので紹介させていただきます。 何回か書いてますが、JP …