Skip to content

知能型スキーマスタジオ & 3-File DB標準

SyncBootは、データベース設計の一貫性と安全性を確保するため、3-File DBスクリプト標準事前承認(HITL)プロセスを適用します。


3-File DBスクリプト標準構造

Server/db/
├── 01. init.sql       # 1. プラットフォーム共通システムテーブル DDL & 基本初期データ
├── 02. syncboot.sql   # 2. ビジネスドメインテーブル DDL & メタデータ
└── 03. sample.sql     # 3. 開発および検証環境用サンプルデータ
ファイル名内容管理原則
01. init.sqlsys_user, sys_role, sys_permission, sys_tenant などの基盤テーブルプラットフォーム共通標準
02. syncboot.sqlTB_ORDER, TB_PRODUCT などのドメイン業務テーブルおよびインデックスSchema Architect 提案 $\rightarrow$ 開発者承認
03. sample.sql開発およびテスト用初期データ開発・QAテスト用

DDL事前承認フロー (Human-in-the-Loop)

影響度分析

  • DROP TABLEやカラム削除、型縮小など既存データに影響を及ぼすクエリを事前に分類して提示します。
  • ロールバック用のスクリプト生成もサポートします。

DDL定義例

sql
-- ===================================================
-- 02. syncboot.sql (ドメインテーブル定義例)
-- ===================================================

CREATE TABLE IF NOT EXISTS `TB_SUBSCRIPTION` (
  `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT 'サブスクリプションID (PK)',
  `tenant_id` VARCHAR(64) NOT NULL DEFAULT 'default' COMMENT 'テナント識別子',
  `user_id` BIGINT NOT NULL COMMENT 'ユーザーID',
  `plan_code` VARCHAR(32) NOT NULL COMMENT 'プランコード',
  `status` VARCHAR(20) NOT NULL DEFAULT 'ACTIVE' COMMENT 'ステータス (ACTIVE, CANCELED, PAUSED)',
  `started_at` DATETIME NOT NULL COMMENT '開始日時',
  `next_billing_at` DATETIME NULL COMMENT '次回請求日',
  `created_by` VARCHAR(64) NOT NULL COMMENT '作成者',
  `created_at` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '作成日時',
  `updated_at` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新日時',
  PRIMARY KEY (`id`),
  INDEX `idx_sub_tenant_user` (`tenant_id`, `user_id`),
  INDEX `idx_sub_billing` (`status`, `next_billing_at`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='定期課金マスタ';

Last updated: