はじめに
メタデータを保持するカラムの設計について、備忘録です。
改訂履歴
- 2026/08/06 : 初版公開。
本文
1. シンプルパターン
最低限って感じです。論理削除フラグや備考は使わないことも多いです。
| 列名 | 型 | 説明 |
|---|---|---|
created_at |
DATETIME | 新規作成日時 |
created_by |
VARCHAR | 新規作成者 |
updated_at |
DATETIME | 更新日時 |
updated_by |
VARCHAR | 更新者 |
is_deleted |
BOOL | 論理削除フラグ |
remarks |
VARCHAR | 備考 |
2. ちょっと重めのパターン
複数のシステムやアプリケーションが同じデータベースを利用することがあります。その場合、単純な created_by だけでは「どのマシンから、どのシステムの、どのユーザーが操作したのか」を特定できないため、マシン ID・システム ID・ユーザー ID を分けて管理することがあります。
| 列名 | 型 | 説明 |
|---|---|---|
created_at |
DATETIME | 新規作成日時 |
created_by_machine_id |
VARCHAR | 新規作成したマシンの ID |
created_by_system_id |
VARCHAR | 新規作成したシステムの ID |
created_by_user_id |
VARCHAR | 新規作成したユーザー ID |
updated_at |
DATETIME | 更新日時 |
updated_by_machine_id |
VARCHAR | 更新したマシンの ID |
updated_by_system_id |
VARCHAR | 更新したシステムの ID |
updated_by_user_id |
VARCHAR | 更新したユーザー ID |
deleted_at |
DATETIME | 論理削除日時(論理削除時のみ設定) |
deleted_by_machine_id |
VARCHAR | 論理削除したマシンの ID |
deleted_by_system_id |
VARCHAR | 論理削除したシステムの ID |
deleted_by_user_id |
VARCHAR | 論理削除したユーザー ID |
remarks |
VARCHAR | 備考 |
おわりに
DMBOK では、オペレーショナルメタデータと呼ぶらしいです。