2011-01-16 5 views
0

Company、Person、Job、Employeeの4つのテーブルがあります。m2m関係の作成方法に関するSQL Serverのアドバイスが必要

最初の3つのテーブルには、従業員に対して1つまたは2つ(少なくない)の関係が必要です。

これらのテーブルのそれぞれにnullableとしてマークする2つのフィールド "Employee1"と "Employee2"を追加する必要があります。

他にもありますか?

私はテーブルを汚くする前にエキスパートから聞きたいと思います。

+0

データへのアクセス方法は?これは重要ではありませんが、これは単にデータベースを作成する方法の課題ですか? – donkim

+0

私はあなたがこの状況の "愚かさ"を説明する必要があると思います。 「なぜ、会社記録に従業員が1人か2人(そして1人か2人か)の従業員がいるのはなぜですか? IOW、これらの従業員と会社、人、雇用者との実際の関係はどうですか? – RBarryYoung

+0

@donkim:私はADO.NETによってDBにアクセスするつもりですが、それはなぜ重要でしょうか? – Shimmy

答えて

1

テーブルが従業員を1〜2回だけ参照する必要がある場合は、実際にはあまり選択肢がありません。あなたがサポートする必要があるのは、1つまたは2つの接続であるEmployeeテーブルだけであれば、複雑なスキーマを作成したくないからです。

私は、Employee1とEmployee2を追加するというあなたの解決策を考えています。

+1

を除き、実際にはEmployee3と4の必要性が伴います。 –

+0

1)dbデザインとモデリングに関する質問です。ジョインはデータベースでは正常です。何も怖がらない。エンジンがそれを処理できます。 2)会社ごとに従業員の固定番号を真剣にアドバイスしていますか? – PerformanceDBA

+0

@ミッチ、@ PERFORMANCEDBA、私の質問に記載されているように、顧客ごとに、会社/人/仕事の記録は1つまたは2つ以上の従業員関係を必要としませんが、問題はこれらの3つのテーブル私のデータベースに3つのCompanyEmployee、PersonEmployee、JobEmployeeテーブルを3つ追加することで汚れてしまったので、他のbreakthruソリューションが存在しない限り、Nicksの回答を受け入れることにしました。 – Shimmy

関連する問題