Как использовать запрос вставки с несколькими таблицами одновременно?

У меня есть одна форма, скажем, форма счета. у меня есть 3 таблицы.

  1. bill (billId-> первичный ключ)
  2. billdetails (billdetailId-> первичный ключ, billId-> внешний ключ)
  3. fintran (finalId -> первичный ключ, всего в форме 10 входов.

При подаче первых 5 входных данных следует указывать в таблице счетов, а остальные 5 входных данных должны указываться в данных счета. И все пойдет в финальный стол. Я использовал ниже запрос для этого.

BEGIN;
$sql = mysqli_query($conn,"INSERT INTO `bill`(`societyId`, `unitId`, `memberId`, `area`, `arrear`, `invoiceNumber`, `invoiceDate`, `dueDate`, `billingPeriod`, `total`, `interestOnArrear`, `totalDue`, `email`, `penalty`, `principalArrears`, `interestArrears`, `advancedAdjusted`, `netPending`) VALUES ('".$societyId."','".$unitId."','".$memberId."','".$area."','".$arrear."','".$invoiceNumber."','".$invoiceDate."','".$dueDate."','".$billingPeriod."','".$total."','".$interestOnArrear."','".$totalDue."','".$email."','".$penalty."','".$principalArrears."','".$interestArrears."','".$advancedAdjusted."','".$netPending."')");
$memo = $_REQUEST['memo'];
$charge = $_REQUEST['charge'];
$sql= mysqli_query($conn,"INSERT INTO `billdetail`(`biilId`, `memo`, `charge`) VALUES (LAST_INSERT_ID(),'".$memo."','".$charge."')");
$sql= mysqli_query($conn,"INSERT INTO `fintran`(`societyId`, `docId`, `docTypeName`, `docDate`, `unitId`, `unitName`, `memberId`, `memberName`, `comboId`, `ledgerId`, `ledgerName`, `debit`, `credit`, `netValue`) VALUES ('".$societyId."',LAST_INSERT_ID(),'bill','','".$unitId."','".$unitId."','".$memberId."','".$memberId."','','".$charge."','','','','')");
COMMIT;

после вставки данных я хочу billId т.е. первичный ключ таблицы счетов в обоих billdetails а также fintran Таблица. но с помощью этого запроса я могу получить это только billdetail Таблица. В fintran таблица я получаю первичный ключ billdetail Таблица. пожалуйста, помогите мне с тем же.

0

Решение

Нет, вы не можете вставить в несколько таблиц в одной команде MySQL. Однако вы можете использовать транзакции.

Проверь это : MySQL вставить в несколько таблиц? (Нормализация базы данных?)

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]