У меня есть простая программа регистрации с использованием рамки 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);
так как вы можете видеть, что я добавить в table1 первый и этот запрос работает отлично и вставляется в моей базе данных, однако второй запрос не добавляются в базу данных, и я получаю следующее Ошибка:
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?
Я использовал CIs, встроенный в методы, но да, это то, что я сделал. – user3116846