我正在製作一張發票軟件,我希望它能保存每張發票。將發票存儲在數據庫中
用戶通過選擇一個客戶來創建發票,然而許多項目正在向客戶收費。鑑於大多數發票都有多個項目,將它們保存到數據庫的最佳方式是什麼,而不會令人難以置信的冗餘?如果需要,我願意重新整理我的整個數據庫。
我的表是這樣的:
客戶表:
Id /Primary key
FullName
Address
Phone
項目表(所提供的產品表):
Id /Primary key
ItemName
Price
Description
發票表(保存發票):
Id /Primary key
CustId /Foreign key is Id in Customer table
ItemId /Foreign key is Id in Item table
Notes
因此,如果用戶有多個發票項目,每一個是否作爲單獨的條目存儲在發票項目表中?所有屬於發票的項目都具有相同的InvoiceId? – 2012-04-25 23:59:50
@ToddBauer正確。對於每張發票,都會有一個帶有ID的「發票」記錄。對於每個發票上的每個項目,您將創建一個將項目連接到發票的「InvoiceItem」。如果可以將多個相同的項目添加到發票中,那麼爲'InvoiceItem'設置一個'quantity'列是很常見的。 – dasblinkenlight 2012-04-26 00:30:35
非常好!我也會添加一個數量行。關於主題,我想告訴你,你的解釋說得很清楚,我很感謝你的時間和精力。答:選中。繼續打好戰鬥。 – 2012-04-26 00:34:00