Hi, I am developing a billing application.
So, the general idea is to have two tables:
Account (identifier, date, customer address, CustomerState, CustomerCountry, VAT, Total); InvoiceLine (Invoice_ID, ID, Concept, Units, PricePerUnit, Total);
As you can see, this basic design leads to a large number of repetitions of records in which the client will have the same settings, state and country.
So an alternative is to have an address table, and then create an Address <-Invoice relationship.
However, I believe that the invoice is an immutable document and should be kept as it was first made. Sometimes customers change their addresses or states, and if they come from an address directory that will change all previously made invoices.
So what is your experience?
How is the customer address stored on the invoice? In the invoice table? address table? or something else?
Can you provide pointers to a book, article or document where this is discussed in more detail?
database-design invoices
elviejo79 Jun 02 2018-10-10T00: 00Z
source share