0
我在將所有外鍵與主鍵鏈接時遇到問題。我有兩個表格: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是Patients表的外鍵。每當我運行查詢表(MySql)時,它都會在外鍵中顯示NULL值。如何索引外鍵與主鍵的對應關係,隨機賦值給外鍵是可以的。
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'爲空,因此mysql不需要'care_centers'中的匹配父記錄。 –
感謝您的幫助!我想我現在明白了。 –