我有一個使用CodeIgniter框架的簡單註冊程序,用戶輸入他們的名稱,用戶名和密碼,然後將這些值存儲到我的數據庫中。插入到2個表時出現外鍵約束錯誤
我有困難,當我嘗試插入到2個表中時,出現外部約束錯誤。現在2代表我有看起來像這樣(原諒我的格式也不太清楚如何在這裏設置表格格式):
Table1
ID INT Auto-Increment Primary key
Username varchar
Password varchar
我的第二個表
Table2
ID INT Foreign key
Name varchar
現在我的PHP代碼,我用它來補充這些值:
$data = array('username' => $username, 'password' => $hashpwd);
$this->db->insert('Table1', $data);
$profiles = array('name' => $name);
$this->db->insert('Table2', $profiles);
因此,大家可以看到我添加到Table第一,此查詢工作正常,並插入到我的數據庫,但第二個查詢不會被添加到數據庫中,我得到以下錯誤:
Cannot add or update a child row: a foreign key constraint fails (`mydb`.`table2`, CONSTRAINT `table2_ibfk_1` FOREIGN KEY (`ID`) REFERENCES `table1` (`ID`))
INSERT INTO `table2` (`name`) VALUES ('John')
有人可以我怎麼可以添加到兩個表,而無需在把ID,因爲我不知道什麼ID?
我使用了構建在方法中的CI,但是這是我所做的。 – user3116846