I'm building an application which, among others, calculates peoples salaries (per week, 4 weeks or month). The data on which this calculation is based needs to be time oriented, so adjustable without modifying the past. This data is divided over several tables and needs to be time oriented independently.

So for example for person A the data in table A can be constant from 1-1-2008 to 10-1-2008 and change on 11-1-2008 and then remain like that till 20-1-2008, while the data in table B can be constant from 1-1-2008 till 5-1-2008 en then change on 6-1-2008 and remain constant till 20-1-2008.

The most ideal situation would be when data in different tables can be changed on a per-day basis.

I've read the book on Time Oriented DB Design from Richard T. Snodgrass, it's understandable but (for me) rather complex to build an entire application with.

Good for simple SQL queries but not an elegant solution would be to construct tables with a record for each date.

What would be a good solution, without having too much database functionality on the client side? What is the "default" way of dealing with this?

Thanks in advance !