SQLServerで参照整合性制約(foreign key)をつける方法を紹介します。
SQLServer Management Studioをダイアログを使って設定する方法となります。
動作確認環境
SQLServer2019 Express
サンプルの説明
以下のようなテーブル構成に対し、t_masterのmaster_idを主キー、t_mainのmaster_idを外部キーとなるよう参照整合性制約を設定します。
参照整合性制約の設定後は、例えばt_mainテーブルレコードを挿入するときに、master_idがt_masterテーブルのmaster_idの中に存在しない値だった場合にエラーになります。
t_masterテーブルへあらかじめデータを登録しておき、
t_masterのmaster_idに登録した値を使えばt_mainへレコードを登録することができます。
設定方法
外部キーがあるテーブルのデザイン画面を表示します。
どれかの列を右クリックし、リレーションシップをクリックします。
下記画像を参考に次を内容を行ってください
①追加を押します
②テーブルと列の指定の入力欄の右にある[…]ボタンをします
主キーと外部テーブルのキーをどのフィールドにするか指定し、OKボタンを押します
前の画面に戻るので[閉じる]を押してください。
最後にテーブルへの変更内容を保存すればOKです。