【发布时间】:2014-05-14 03:01:03
【问题描述】:
我用 PHP 在我的 MySQL 数据库中插入一些数据,使用 PDO。
$connection->query(
"INSERT INTO eOrderManagement.first_name (first_name)
VALUES ('" . $firstName . "');
INSERT INTO eOrderManagement.last_name (last_name)
VALUES ('" . $lastName . "');
INSERT INTO eOrderManagement.section (section)
VALUES ('" . $section . "');
INSERT INTO eOrderManagement.order (creation_date, wished_delivery_date, status, email, first_name_id, last_name_id, section_id)
VALUES ('" . $creationDate . "', '" . $wishedDeliveryDate . "', 'En attente', '" . $email . "', (SELECT first_name_id FROM eOrderManagement.first_name WHERE first_name LIKE '" . $firstName . "'), (SELECT last_name_id FROM eOrderManagement.last_name WHERE last_name LIKE '" . $lastName . "'), (SELECT section_id FROM eOrderManagement.section WHERE section LIKE '" . $section . "'));
INSERT INTO eOrderManagement.equipment (description, imputation, cost, maintenance_cost, order_id)
VALUES ('" . $description . "', '" . $imputation . "', '" . $cost . "', '" . $maintenanceCost . "', (SELECT MAX(order_id) FROM eOrderManagement.order));"
);
前三个请求被插入到我的数据库中,但最后两个没有。 我尝试将它们手动插入到 MySQL Commande Line 中,直接使用查询中的数据(与 PHP 中的变量不同),并且所有查询都正确插入数据。
知道为什么这两个查询没有插入任何东西吗? 我正在谈论的两个查询是:
INSERT INTO eOrderManagement.order (creation_date, wished_delivery_date, status, email, first_name_id, last_name_id, section_id)
VALUES ('" . $creationDate . "', '" . $wishedDeliveryDate . "', 'En attente', '" . $email . "', (SELECT first_name_id FROM eOrderManagement.first_name WHERE first_name LIKE '" . $firstName . "'), (SELECT last_name_id FROM eOrderManagement.last_name WHERE last_name LIKE '" . $lastName . "'), (SELECT section_id FROM eOrderManagement.section WHERE section LIKE '" . $section . "'));
INSERT INTO eOrderManagement.equipment (description, imputation, cost, maintenance_cost, order_id)
VALUES ('" . $description . "', '" . $imputation . "', '" . $cost . "', '" . $maintenanceCost . "', (SELECT MAX(order_id) FROM eOrderManagement.order));"
【问题讨论】: