2016-08-25 8 views
0

複数の顧客をサポートするアプリケーションのために、どのようなテーブルとリレーションシップを設計する必要がありますか?複数の顧客で単一の製品を使用している場合のテーブルの管理方法

私は複数の顧客と1つの製品を持つWebアプリケーションを開発しています。毎日の売上データを各顧客ごとに保管したい - 約10人の顧客がいる。

私のアプリケーションは、以下のデータを入力し、保存されている画面があります

  • バランス

    1. 顧客名
    2. 価格
    3. 量あたりの数量
    4. 合計金額を
    5. オールドバランス
    6. トータルバランスは

    私はテーブル、テーブルの数とそれらの間の関係を作成する方法を決定する必要があります。たとえば、顧客ごとに別々のテーブルを用意する必要がありますか?私は総売上高をデータベースで管理する必要があります。

  • +0

    実際には2つのテーブル、列として上記の情報を持つ顧客テーブル、次に製品をリストする製品テーブルのみが必要です。 2つのテーブルをリンクすることができるように、製品の製品IDを与えることができます。単純な合計の数式を実行して得意先テーブルから合計を取得するか、2つのテーブルをリンクしてすべての集計を行うビューを作成します。 –

    +0

    私は顧客に毎日の売上を保存しなければならず、製品と私は私が製品idを必要としないと思いますか? –

    +0

    あなたの質問を少し改めて、読みやすくしました。あなたがそれをさらに改善できると感じたら、もっと明確にしてください。 –

    答えて

    0

    テーブルは2つあります。列Id、名前

    を持つ1つの顧客メインテーブルIDは、顧客名の挿入ごとに増分するIDタイプにすることができます。単一の製品があるよう

    CREATE TABLE Customer(
    Id INT IDENTITY(1,1) PRIMARY KEY, 
    Name VARCHAR(30) 
    ) 
    

    第二表が売上テーブルとすることができ、あなただけのこの表の列とすることを持つことができます。このテーブルの列は

    1. ID(売上テーブルのために再びアイデンティティ主キー)

    2. 製品名

    3. 数量

    4. 総額

    5. 金額になります
    6. 残高
    7. 旧バランス
    8. トータルバランス
    9. のCustomerId(顧客テーブルを参照する外部キー)

    また販売日が日付に基づいて売上を取得すると便利でしょうsales表に追加することができます。

    取得中に、テーブル間の関係を使用して得意先名を取得することができます。 この情報が役立つことを願っています。

    +0

    お返事ありがとうございます私はあなたのテクニックでそれを得ました。いいぞ !!!!! –

    +0

    ありがとうございました:-)私の答えを正しい答えとしてマークしてください。 –

    関連する問題