誰かがこのスクリプトで私を助けることができたら、私はそれを高く評価します。SQL外部キー
私は基本的に外部キーを使用して複数の主キーを持つテーブルを参照しようとしていますが、エラーが発生し続けます。私は、パーソナルトレーナーのためのテーブル作成スクリプトを実行すると、私はこのエラーになります:
Msg 1776, Level 16, State 0, Line 3 There are no primary or candidate keys in the referenced table 'Schedule' that match the referencing column list in the foreign key 'FK__Personal_Trainer__38996AB5'. Msg 1750, Level 16, State 0, Line 3 Could not create constraint or index. See previous errors.
ここに両方のテーブルのCREATE TABLEスクリプトがあります。私は個人的なトレーナーのスケジュールでテーブルを参照するために外部キーを使用しようとしています。 FitnessWebApp
は、データベースの名前です。
use FitnessWebApp
create table Schedule
(
day char(20),
time char(20),
name char(30),
gymName char(30)
primary key (name, gymName, day, time)
);
use FitnessWebApp
create table Personal_Trainer
(
name char(30),
gymName char(30)
primary key(name, gymName),
foreign key (name, gymName) REFERENCES Schedule(name, gymName)
);
http://stackoverflow.com/search?q=%5Bsql-server%5D+There+are+no+primary+or+candidate+keys+in + +参照+テーブル –
「複数の主キーを持つテーブル」のようなものはありません。*複合*主キーを持つテーブルがあります。プライマリキーは1つだけです。間違った方法でFKを作成しようとしているように見えます(スケジュールがトレーナーを参照するのではなく、トレーナーを参照するべきではないでしょうか?) –