Когда новый клиент покупает продукт, я хочу сохранить данные клиента в таблице clients
, а также сохранить соответствующий идентификатор client_ID в таблице orders
.Как хранить одни и те же данные в двух разных таблицах mySQL?
заказов стол:
order_ID product client
============================
1501 bag 1
1502 shoe 2
клиентов стол:
client_ID name
=================
1 Frank
2 John
Я нашел решение, которое работает, но у меня есть ощущение, что это не самое умное решение.
$sql = "INSERT INTO clients(name) VALUES(?)";
$q = $con->prepare($sql);
$q->execute(array($name));
$sql = "INSERT INTO orders(product) VALUES(?)";
$q = $con->prepare($sql);
$q->execute(array($product));
$sql = 'SELECT * FROM clients ORDER BY client_ID DESC LIMIT 0, 1';
foreach ($con->query($sql) as $row) {
$client = $row['client'];
$sql = "UPDATE orders SET client = '$client' WHERE client IS NULL";
$query = $con->prepare($sql);
$query->execute();
}
Вопрос в том, есть ли лучший способ сделать это? (Примечание: CLIENT_ID является AUTO_INCREMENT)
Спасибо вам большое – Jarla