Witam
Mam następujący problem. Tabela Customer przechowuje dane klientów, potrzebne przy wystawianiu faktur. W momencie gdy chcę zmienić dane jakiegoś klienta z powodu np. zmiany adresu czy też nazwiska, stare dane muszą być zachowane ponieważ wszystkie faktury które zostały już wystawione (zapisane w bazie danych) na danego klienta muszą posiadać jego stare dane. Na razie wymyśliłem coś takiego:
W tabeli klient jest kolumna "version", która wraz z kolumną "id" jest kluczem głównym. Podczas edycji tworzony jest nowy rekord z danymi klienta natomiast kolumna "version" zwiększa swoją wartość o 1.
Tabela "faktury" zawiera klucz obcy do odpowiedniego id oraz wersji klienta. To rozwiązanie działa poprawnie, jednak w przypadku drobnych zmian w danych klienta (np. zmiany imienia Lukasz na Łukasz itp) cała procedura wydaje sie bezsensowna, wtedy można by zastosować zwykłe polecenie UPDATE. Czy ktoś ma pomysł jak to lepiej rozwiązać? Proszę o pomoc
Z góry dzięki i pozdrawiam