テーブル定義書テンプレート.md

## テーブル情報

| 論理名 | 物理名 | 種別  | 説明/備考 |
| --- | --- | --- | ----- |
| ___ | ___ | ___ | ___   |

## カラム情報

| No. | 論理名 | 物理名 | 型/型名 | 長さ/桁数 | 精度  | 必須  | 主キー | デフォルト値 | 外部キー | インデックス | 定義内容 |
| --- | --- | --- | ---- | ----- | --- | --- | --- | ------ | ---- | ------ | ---- |
| 1   | ___ | ___ | ___  | ___   | ___ | ___ | ___ | ___    | ___  | ___    | ___  |
| 2   | ___ | ___ | ___  | ___   | ___ | ___ | ___ | ___    | ___  | ___    | ___  |
| 3   | ___ | ___ | ___  | ___   | ___ | ___ | ___ | ___    | ___  | ___    | ___  |
| 4   | ___ | ___ | ___  | ___   | ___ | ___ | ___ | ___    | ___  | ___    | ___  |
| 5   | ___ | ___ | ___  | ___   | ___ | ___ | ___ | ___    | ___  | ___    | ___  |

## インデックス情報

| インデックス名 | 対象カラム | インデックスタイプ | ユニーク制約 |
| ------- | ----- | --------- | ------ |
| ___     | ___   | ___       | ___    |

## 外部キー制約

| 制約名 | 参照元カラム | 参照先テーブル.カラム |
| --- | ------ | ----------- |
| ___ | ___    | ___         |

## 項目説明

- **システム名**: ソースコードから特定されたシステムの名称です。コメントやプロジェクト名から抽出されます。
- **論理名**: ソースコード内のコメントやラベルから推測される、ビジネス上の名称です。日本語名が使われていることが多いです。
- **物理名**: データベース上の実際のテーブル名やカラム名です。通常は英字で、大文字小文字やスネークケース等の命名規則があります。
- **種別**: テーブルの種類です。実際のデータベースの実装や使用状況から判断します(テーブル、ビュー、一時テーブルなど)。
- **説明/備考**: テーブルの用途や特記事項を記載します。
- **No.**: カラムの識別番号です。通常はデータベース上の定義順序に従います。
- **型/型名**: データベース上で定義されている型情報です。DBMS固有の型も含まれます。
- **長さ/桁数**: データ型に設定されている長さや桁数の制約です。NVARCHAR(50)なら「50」と記入します。
- **精度**: 数値型の小数点以下の桁数です。例えばDECIMAL(10,2)の「2」の部分を記載します。
- **必須**: NULLが許容されないカラムは「Y」、NULL可のカラムは「N」と表記します。データベースの制約から判断します。
- **主キー**: プライマリキーに設定されているカラムは「Y」、そうでない場合は空欄または「N」とします。
- **デフォルト値**: カラムに設定されているデフォルト値を記載します。
- **外部キー**: 外部キー制約がある場合、参照先のテーブル名とカラム名を記載します。
- **インデックス**: インデックスが設定されている場合は「Y」、そうでない場合は「N」と記載します。
- **定義内容**: コード内のコメントやデータサンプルから推測される、カラムの使用目的と取りうる値の意味を記載します。例えば「ステータスコード(0:未処理、1:処理中、2:完了、9:エラー)」のように取りうる値とその意味を明記します。また表示形式や入力制限が推測できる場合もここに記載します。
- **インデックス名**: データベース上で定義されているインデックスの名称です。
- **対象カラム**: インデックスの対象となるカラム名です。複合インデックスの場合は、カラムの順序も記載します。
- **インデックスタイプ**: インデックスの種類(BTREE、HASH等)を記載します。
- **ユニーク制約**: ユニークインデックスの場合は「Y」、そうでない場合は「N」と記載します。
- **制約名**: 外部キー制約の名称です。
- **参照元カラム**: 外部キー制約の参照元となるカラム名です。
- **参照先テーブル.カラム**: 外部キー制約の参照先となるテーブル名とカラム名です。