Osobiście dodałbym daty aktywności od-do i być może jakiś status (A - Aktywny, B - Do wygaszenia, C - Wygaszony, D - usunięty). To daje ci szersze możliwości sterowania logiką aplikacji, tak jak w tym przykładzie człowieka z fakturami. W statusie innym niż A można wyszukać czy drukować jego faktury, ale nie można już na niego faktury wystawić.
Co do dat, ustawiasz wszystkim wspólną datę od (np. data uruchomienia systemu), data do zostaje pusta lub ustawiasz jakąś "dużą" datę typu 9999-12-31, jeśli chcesz ułatwić sobie wyszukiwanie po datach. Do tego, w zależności czy system operuje tylko na dacie bieżącej czy biznesowej (która może być wcześniejsza niż bieżąca), dokładasz warunek typu:
.. and DataBieżąca (lub DataBiznesowa) between DATA_OD and DATA_DO - najlepiej w jakiejś warstwie abstrakcji, żeby wszędzie tego ręcznie nie dodawać.
and status in (.... ) - to w zależności od potrzeb - albo steruje tym użytkownik albo system
W tym momencie widzisz tylko dane aktualne na daną datę, czy to aktualną czy biznesową. Wtedy użytkownik nie widzi nieaktualnych towarów/środków, ale jeśli system mu pozwoli zmienić tę datę "bieżącą" to może sprawdzić czy były aktualne wcześniej.
W przypadku pustej daty do (co oznacza rekord wciąż aktywny) trzeba się trochę bardziej napracować, żeby efektywnie wyszukiwać rekordy w zadanym przedziale. Jakieś NVL/COALESCE, indeks funkcyjny itp. - trzeba to dopracować w zależności od rodzaju bazy.
Jeśli takich danych historycznych jest dużo (w sensie milionów rekordów), to jeśli jest możliwość ich wydzielenia przez partycjonowanie, to warto to zrobić.
W ogólności koncepcję danych historycznych należy w systemie zaplanować jak najwcześniej, bo potem koszt wprowadzenia obsługi jakiegoś archiwum robi się koszmarny. No bo klient chce przesuwać dane do archiwum po N latach, ale to zależy co konkretnie, a jeszcze żeby dało się przywracać, a ten moduł ma widzieć tylko aktualne dane, ale ten drugi to już ma operować na całej historii danych, bo chcemy wyznaczać trendy... I weź to zrób na systemie, który działa już 10 lat.