Kunci asing seharusnya tidak mengarah ke entitas, tetapi ke versi entitas saat ini

Katakanlah Anda bertanggung jawab untuk memperbaiki jalanan. Perusahaan "Peter and Sons" telah menandatangani perjanjian dengan Anda untuk mengecat pagar di alamat: Kuibyshev, Starokolpaksky perulok, 1.

Pada saat yang sama, di tingkat database, perjanjian tersebut akan ditautkan ke alamat dan ke perusahaan .





Lima tahun kemudian, Peter meninggal. Putra-putra Peter melanjutkan dinastinya (lukisan pagar).





Sekarang perusahaan yang menandatangani kontrak itu disebut "Boris and Denis". Pada saat yang sama, kota Kuibyshev mulai disebut Samara. Sekarang, jika Anda mulai mencari dokumen untuk mendapatkan pengurangan pajak, kemungkinan besar Anda tidak akan menemukannya - program Anda menunjukkan bahwa perusahaan Boris dan Denis mengecat pagar di kota Samara sesuai instruksi Anda.





Untuk menghindari insiden seperti itu, semua versi objek, termasuk yang sudah usang, harus disimpan dalam tabel. Dalam hal sistem alamat, FIAS akan membantu Anda dengan ini, itu hanya itu (di sana, setiap catatan tentang objek alamat menyimpan pengenal AOID - ini adalah pengidentifikasi dari versi tertentu dari objek, dan pengenal AOGUID adalah pengenal objek alamat secara keseluruhan, yang tidak berubah jika objek diubah namanya atau dialihkan. Sistem yang serupa, saya yakin, ada tidak hanya untuk alamat, tetapi juga untuk properti dari badan hukum yang pernah terdaftar.





Kunci Asing dalam Bahasa Isyarat, gambar dari corchaosis.ru
Kunci Asing dalam Bahasa Isyarat, gambar dari corchaosis.ru

Kunci asing dalam database Anda tidak boleh mengarah dari dokumen ke objek, tetapi ke versi tertentu, aktual pada saat pembuatannya, dari setiap objek.





Jika tidak, sistem perbankan Anda akan menagih pelanggan dengan persentase yang lebih tinggi, berdasarkan fakta bahwa mereka tidak tinggal di alamat yang ditunjukkan oleh cap di paspor mereka. Namun kenyataannya ini adalah jalan yang sama, dulu disebut berbeda. Dan seterusnya.








All Articles