2017-02-24 32 views
-2

私はSQL Server 2014とEntity Frameworkをコードファーストで使用しています。私は顧客の詳細を持つテーブルAccount Masterを作成しようとしています。列は以下の通りです。自動インクリメントの主キー 同じテーブルの主キーと外部キー

  • Nameとして

    • Id varchar型
    • Cityとしてはvarchar
    • phonenumberとしてはvarchar
    • BrokerIdとして

    intとして今、私の質問はBrokerIdを参照する方法です同じテーブル名に外部キーとして0列Idの主キーを持つ

    私のケースでは、ブローカーにもこの詳細がすべて含まれているためです。また、すべての顧客がブローカーを持つ必要はありません。このようにするべきかどうか。

    ありがとうございます。

  • 答えて

    2

    CREATE TABLE文に外部キー制約を追加できますか?

    CONSTRAINT FK_AccMaster_ID FOREIGN KEY (BrokerID) 
        REFERENCES AccountMaster(ID) 
    

    これは、2つのテーブルをリンクする一般的な方法です。 ご質問に何か不足している場合を除き...

    1

    私はこのようにするべきかどうかを回答しています。

    2つのタブレットユーザーとブローカーを作成することを検討してください。ユーザとブローカが同じ詳細を持っていても、メモリは賢明です。

    Ifは両方のテーブルに拡張性を提供します。多対多の関係が可能です。

    また、1つのテーブルが単一のエンティティを表すようにすることを意味します。ブローカを照会するには、ユーザーをスキャンする必要はありません。その逆もあります。

    関連する問題