プロジェクト

全般

プロフィール

設計 #3

Lunatic1998 さんが約1年前に更新

### DB設計 

 #### 目的 
 * アプリケーションを開発する上で、データベースにあらゆるデータを格納するが、最適な形でデータを保存することが開発効率とパフォーマンスに影響する。 

 #### 概要 アプリケーションを開発する上で、データベース内のテーブルとカラム、カラムの型やサイズまで設計する。 
 * データベース内のテーブルとカラム、カラムの型やサイズまで設計する。 
 * パフォーマンス(INDEX(索引)については、本チケットでは考慮しない。 

 #### DB設計に必要な四大要素 
 * データベース設計の対象業務において、管理すべき情報のことをエンティティ(テーブル名に直結) 
 * エンティティに従属する項目のことを属性(カラム名に直結) 

 #### テーブルの洗い出し 

 - 手順書テーブル 
 - ユーザーテーブル 
 - 手順書とユーザーを紐づけるテーブル 
 - 手順ブロックテーブル 

 #### カラムの洗い出し 

 ##### user_table 

 - 手順書を扱うユーザーを管理するテーブル 

 | id(uuid) | email(string) | subscriber(string) |  
 | ---- | ---- | ---- | ---- | ---- | ---- | 
 | wrrg35g | aaa@gmail.com | aaaking | 

 ##### session_table 

 - ユーザーログインのセッションを管理するテーブル 

 #### operation_table 

 - 手順書を管理するテーブル 

 | id(uuid) | title(string) | date(datetime) | block(uuid) | tag(list[string]) | status(tf true=close) | user() | 
 | ---- | ---- | ---- | ---- | ---- | ---- | 
 | wf23n2 | DB移行 | 2007/01/12 |2erfrge | mysql | true |  
 | g3kmge | v1.0リリース | 2007/01/13 | ef43gm | release | false |  

 #### block_id 

 | id | title | command | operation_id | status | 
 | ---- | ---- | ---- | ---- | ---- | 
 | 2erfrge | バックアップ | ~~~~~ | 1 | true | 
 | ef43gm | 切り戻し | ~~~~ |    1 | false |

戻る