Data Model part 3 - out of sync Database Object {Table, View} vs Model {BackEnd}
Data Model part 3 - out of sync Database Object {Table, View} vs Model {BackEnd}
Situasi
out of sync Database Object {Table, View} vs Model {BackEnd} bisa terjadi, karena:
- proses Add/Update Delete
- pada Database Object {Table, View}
- maupun pada Model {BackEnd}
Solusi
Prompt seperti berikut:
saya punya A: {fileName_DB_Object.sql}
saya punya B: {fileName.cs}
tolong check B, perbaiki jika ada yang “tidak tepat”:
- berdasarkan A
Pola
Promptini merupakan implementasi dari:
Request: ke AI secara efektif dan efisien
Guideline:
- Database Object {Table, View}
- sebagai “Source”
Contoh kasus: kolom baru di Database, lupa di-update di Model {BackEnd}
Situasi:
- ada kolom baru:
ApprovalStatusditambahkan diTableSales Order - Model {BackEnd} tidak diupdate
Efeknya:
- saat Write data → kolom
ApprovalStatusselaluNULLdi Database - saat Read data → field
ApprovalStatustidak ada di response API - FrontEnd tidak bisa menampilkan data yang seharusnya ada
- bug seperti ini susah dilacak — tidak ada error, data hanya “hilang diam-diam”
silent bug — lebih berbahaya dari error yang jelas
Kenapa Database Object dijadikan “Source of Truth”?
- Database adalah endpoint terakhir dari data
- jika Database dan Model tidak sinkron → data yang tersimpan bisa salah, atau data tidak terbaca
- sebaliknya: jika Model yang dijadikan “Source” → risiko mismatch dengan struktur aktual Database
Database Object = ground truth
Model BackEnd = harus mengikuti Database