私はSql Server 2012を使用してデータベースに取り組んでいます.私たちのデータモデルではUser
、基本的なログイン情報、名前、住所などを含むタイプがあります.これらのユーザーの一部はTechnician
、 a 、しかし、、 などUser
の他のいくつかのプロパティ。Route
Ship To Location
私の質問は、データベースを設計する際に、この状況をどのようにシミュレートするかです。私は2つのオプションを考えました。
- それらをリンクするために、
Technician
テーブルにデータベースの PK への外部キーを用意します。User
これに関する私の懸念は、ユーザーが技術者であるかどうかをどのように知ることができるかということです。ユーザーがログインするたびに、技術者テーブルでクエリを実行する必要があります。 - テーブル内のフィールドを
User
技術者データベースの PK とリンクさせます。このフィールドが null、または -1、またはこのユーザーが技術者ではないことがわかっている場合。これに関して差し迫った問題は見当たりませんが、私はデータベース設計の専門家ではありません。
これらのどちらにも利点がありますか? もしそうなら、それはなぜですか? 現在、2 つのまったく異なる ID を持つ 2 つの異なるテーブルがあり、それらはまったくリンクされていないため、現在問題に直面しています。