2012-01-29 11 views
0

私は、NULLではないCityID列とNULL可能なDistrictID列を持つAddressというテーブルを持っています。他のテーブルを照会するSQL Serverのチェック制約

私は、地区がテーブルに入力されている場合、その地区は確かに派閥都市の地区であることを確認したいと思います。チェック制約でそれを行うことはできますか?

次のように私のテーブルの構造は次のとおりです。

市:CityID(int型)、名前(NVARCHAR)

地区:DistrictID(int型)、CityID(int型)、名前(NVARCHAR)

アドレス:AddressID(int)、CityID(int)、DistrictID(int)

チェック制約で実行できない場合は、トリガーソリューションも表示したいと思います。

答えて

4

cityidとdistrictidの両方を含む複合外部キーがこのチェックを提供します。

ALTER TABLE Address 
ADD FOREIGN KEY (districtid, cityid) REFERENCES district(districtid, cityid) 
関連する問題