0
すべての外部キーを主キーとリンクする際に問題があります。私は2つのテーブルを持っている:MySql外部キー主キーが一致しません
CREATE TABLE Patients
(pid INT NOT NULL AUTO_INCREMENT,
name VARCHAR(25),
address VARCHAR(30),
telephone VARCHAR(10),
care_centre_id INT,
CONSTRAINT Patients_PK PRIMARY KEY (pid));
CREATE TABLE Care_centres
(cid INT NOT NULL AUTO_INCREMENT,
name VARCHAR(25),
location VARCHAR(30),
nurse_charge_id INT,
CONSTRAINT Care_centres_PK PRIMARY KEY (cid));
ALTER TABLE Patients ADD FOREIGN KEY (care_centre_id) REFERENCES Care_centres(cid);
CIDはCare_centresテーブルの主キーである、とcare_cente_idは、患者テーブルの外部キーです。クエリテーブル(MySql)を実行するたびに、外部キーにNULL値が表示されます。どのように私はプライマリキーと外部キーの対応付けをインデックスすることができます、それは外来のキーに値をランダムに割り当てられることはOKです。
mysql> SELECT * FROM Patients;
+-----+--------+----------------+------------+----------------+
| pid | name | address | telephone | care_centre_id |
+-----+--------+----------------+------------+----------------+
| 1 | Joe | 8 Walker Road | 7800921111 | NULL |
| 2 | Jose | 10 Runner Road | 7800922222 | NULL |
| 3 | Joseph | 12 Jogger Road | 7800923333 | NULL |
+-----+--------+----------------+------------+----------------+
ありがとうございました。
FKを指定しただけでも、mysqlがそれらの値を魔法のように埋め込むことはできません。 'care_center_id'をnullにすることができるので、mysqlは' care_centers'に一致する親レコードを持つ必要はありません。 –
お世話になりました!私は今それを得たと思う。 –