1.8 KiB
1.8 KiB
Aturan Penulisan Table dan Kolom (cpone_dashboard)
1) Penamaan Table
- Gunakan
snake_casesemua huruf kecil. - Gunakan prefix domain bila relevan:
mcu_...,dashboard_...,published_.... - Nama table harus deskriptif dan konsisten dengan modul data.
- Contoh benar:
mcu_participant_dailymcu_participant_daily_detailsmcu_patient_resume_status
2) Penamaan Kolom
- Gunakan
PascalCasedengan prefix entitas/tabel. - Pola utama:
<EntityPrefix>IDuntuk primary key.<EntityPrefix><FieldName>untuk field lain.
- Hindari nama generik tanpa prefix seperti
IsActive,Created,LastUpdated. - Contoh benar (table:
mcu_participant_daily_details):Mcu_ParticipantDailyDetailsIDMcu_ParticipantDailyDetailsParticipantDailyIDMcu_ParticipantDailyDetailsMcu_PatientIDMcu_ParticipantDailyDetailsIsActiveMcu_ParticipantDailyDetailsCreatedMcu_ParticipantDailyDetailsLastUpdated
3) Kolom Status & Waktu (Standar)
- Status aktif:
...IsActive CHAR(1) NOT NULL DEFAULT 'Y'.
- Waktu buat:
...Created DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP.
- Waktu update terakhir:
...LastUpdated TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP.
4) Key dan Index
- Primary key wajib pada kolom
...ID. - Tambahkan index pada kolom relasi/filter utama.
- Nama index gunakan pola jelas:
idx_<field>untuk index biasa.uq_<context>/uk_<context>untuk unique key.
5) Charset/Engine
- Gunakan:
ENGINE=InnoDBDEFAULT CHARSET=utf8mb4
6) Checklist Sebelum Buat Migration Baru
- Pastikan nama table
snake_case. - Pastikan semua kolom pakai prefix entitas (bukan nama generik).
- Pastikan kolom ID, IsActive, Created, LastUpdated mengikuti standar.
- Tambahkan index minimal untuk kolom relasi dan kolom filter utama.