My entry form У меня есть база данных инвентаря с таблицами, такими как алюминий, железо и т. Д. Каждая таблица содержит подкатегорию таких элементов, как aluminium_pala, iron_1.5inch и т. Д. Ввода кода, как это:Правильный способ управления базой данных
include("dbConnect.php");
$orderNo = $_POST["number"];
if(isset($_POST["mat1"])&&$_POST["mat1"]!=NULL)
{
$mat1 = $_POST["mat1"];
$selmat1 = $_POST["selmat1"];
$amtmat1 = $_POST["amtmat1"];
$query = "INSERT INTO $mat1 ($selmat1,orderNo) VALUES (-$amtmat1,$orderNo);";
if(!($result = $mysqli->query($query)))
print "<div class='error'>insertion failed. Check your data</div>";
}
if(isset($_POST["mat2"])&&$_POST["mat2"]!=NULL)
{
$mat2 = $_POST["mat2"];
$selmat2 = $_POST["selmat2"];
$amtmat2 = $_POST["amtmat2"];
$query = "INSERT INTO $mat2 ($selmat2,orderNo) VALUES (-$amtmat1,$orderNo);";
if(!($result = $mysqli->query($query)))
print "<div class='error'>insertion failed. Check your data</div>";
}... and it goes on till mat11
Я пытаюсь собрать каждую подобную таблицу (MAT1, MAT2 ..) и их соответствующий пункт (selmat1, selmat2 ...) и кучу Все в один запрос. То есть, вместо того, чтобы идти
INSERT INTO al_openable (zPala,orderNo) VALUES (23,14);
INSERT INTO al_openable (outer,orderNo) VALUES (50,14);
Я пытаюсь выполнить его как
INSERT INTO al_openable (zPala,outer,orderNo) VALUES (23,50,14);
мне нужно это, чтобы избежать дублирования внешнего ключа записи (за $ OrderNo). Одна из идей, которую я рассматривал, - это использовать UPDATE, если номер заказа уже существует. Вы, ребята, думаете, что это хорошая идея? И если да, то какой будет лучший способ ее выполнения? Если нет, как бы более опытный программист решил эту головоломку?
Сохраните только одну таблицу с этими полями: 'zPala, внешний, orderN', а затем введите соответственно –
. Пожалуйста, прочтите мой вопрос. У меня уже есть эта таблица. Проблема заключается в объединении запросов для одинаковых таблиц. –