title: Need help designing my invoice db structure
body: <p>I have a website where customer can buy subscriptions.<br>
  The customer can at any time go to payment history and see what has ben bought.</p>
  
  <p>I'm trying to design the db for creating invoices, but something doesn't seem right for me.</p>
  
  <p>My current setup looks like this:</p>
  
  <pre><code>+-----------+--------------+---------+
  |  Invoice  | invoice_item | product |
  +-----------+--------------+---------+
  | id        | id           | id      | 
  | fk_userID | desc         | name    |
  |           | quantity     | price   |
  |           | sum          |         |
  |           | fk_invoiceID |         |
  +-----------+--------------+---------+
  </code></pre>
  
  <p>It seems logical that <code>invoice_item</code> has a foreign key referenced to <code>product</code>.<br>
  But what happens if a product is deleted? If they are related, then row in the item_list will be deleted or set to null.</p>
  
  <p>And that will not work if you want to look at an old invoice and the product is no longer available.</p>
  
  <p>So, should <code>Product</code> and <code>Item_list</code> be related?</p>