2017-03-17 11 views
1

私は倉庫管理システムを設計するためのスキーマを持っていますが、これまではこの時点までうまくいっています。私のデータベースにはいくつかのテーブルがありますが、それらの中で最も重要なものはすべてInvoicesテーブルです。私の問題は、顧客が買おうとしたときに、1つ以上のアイテムを購入する可能性があり、同じ顧客に関するすべてのエントリを請求テーブルに入れて、ユニークな識別子を作るか、顧客とアイテムは彼または彼につながっていますが、私は今、可能な限り、購入可能なアイテム数のスペースを持つすべての潜在的な顧客のためのスペースを作成する機能を生成できるように、そして。私は配列のリストが助けることができると考えているが、私は各顧客ごとに買ったアイテムの一意のリストを作成し、それをJテーブルに表示するそのような関数を実装する方法に関する十分な知識がない。どんなアイデアや参考資料も大歓迎です。良いcrud機能と最適な応答時間のためにデータベースを構造化する方法

これはテーブルです:

TABLE INVOICES  

Id, 
ItemDescription, 
Invoice Number, 
Quantity, 
Transaction Type, 
Balance, 
Discount, 
Invoice Date, 
Amount Payed, 
Invoice Sum, 
Overall Total. 


TABLE CUSTOMERS 
    Id 
First Name, 
Last Name, 
    Contact, 
    Email, 
Location 

は、私はMySQLとネット豆IDE 8.0.2

+0

句読点の使用について聞いたことがありますか? –

答えて

0

でJavaを使用しています申し訳ありませんが、私は完全にあなたの質問を理解して確認していません。

これをモデル化するための一般的な方法は次のとおりです。言い換えれば

Customer 
------------ 
customer_id 
.... 

Product 
-------- 
product_id 
.... 

Purchase_header 
-------- 
purchase_id 
customer_id 
...... 

purchase_line 
-------------- 
purchase_id 
product_id 
quantity 
price_each 
total_price 
...... 

invoice 
------- 
invoice_id 
purchase_id 
amount 
.... 

payment 
------- 
payment_id 
invoice_id 
amount 
...... 

... 顧客は購入が1のため、ラインアイテムを1..Nた0..N購入

を持っています製品、数量、品目当たりの価格、および合計金額と

購入0..N請求書を有している請求書が0を有する

(負インボイスとして払い戻しを考えます)..お支払い

+0

非常に参考になりました...確かに2台のテーブルを使用することに決めました。この台帳のデータを表示するには – jaYjaY

+0

||テーブル請求書シート||顧客ID、Invoice_ID、Transaction_Type、残高、割引、請求書日付、支払額、逆戻り額、合計額および全体合計....次にidは、次のように特定のCustomer_IDとInvoice_IDにバインドされた項目を表示するために2番目の表を使用します。 |テーブルInvoices_has_stock_items || ----> Customer_ID、Invoice_ID、Item_Code、Quantity、Total – jaYjaY

関連する問題