Допустим, у меня есть 2 таблицы в базе данных, первая таблица — это регистрация пользователей, а вторая — это данные пользователя. В таблице userregistration первичный ключ, который я использую, называется id, и он автоматически увеличивается.
Итак, скажем, я вставил одного пользователя, и идентификатор пользователя равен 1, а затем я хочу вставить данные указанного пользователя, как мне убедиться, что идентификатор также такой же, как в таблице регистрации пользователей?
Про last_insert_id уже читал, но не могу понять, как его использовать.
Похоже, вы настраиваете столы 1: 1. Хороший способ сделать это — сделать первый первичным ключом с автоинкрементом, а второй — просто первичным ключом без автоинкремента. Используйте last_insert_id, чтобы скопировать ПК из одного в другой, когда вы делаете вторую вставку.
Если это случай 1:1, возможно, нет причин для существования второй таблицы вообще. Есть ли у вас причины не хранить данные пользователя в таблице пользователей?






Вот пример:
$server_name = ""; //Your server name
$user_name = ""; //Database Username
$password = ""; //Database Password
$database_name = ""; //Database Name
// Create a connection
$connnection = new mysqli($server_name, $user_name, $password, $database_name);
//Insert into First Table
$sql = "INSERT INTO user_registration (firstname, lastname)
VALUES ('Firstname', 'Lastname')";
if ($connection->query($sql) == TRUE) {
$last_inserted_id = $connection->insert_id;
//Insert into Second Table
$sql_two = "INSERT INTO user_registration (user_id, phone_no, address)
VALUES ($last_inserted_id, 1234567, 'Address')";
$connection->query($sql_two);
}
Вы должны создать ссылку на внешний ключ во второй таблице. В этом user_id является внешним ключом.
Это неплохо, но конкатенация строк учит некоторым плохим привычкам. Это было бы лучше в качестве подготовки/выполнения.
Эти SQL-запросы не будут работать. У них обоих есть дополнительный ; после списка столбцов и перед VALUES;
Вы можете создать реляционную базу данных, что-то вроде регистрации пользователя и сведений о пользователе. Идентификатор регистрации пользователя будет передан в таблицу регистрации пользователей в качестве внешнего ключа для отношения. Надеюсь, вы читали о реляционных базах данных.