如何在单个查询中将数据插入到多个表中 - Mysql

ang*_*gel 5 php mysql mysqli-multi-query

I have 8 query's to insert into 8 tables. I have tried with this But no use

$mysql_db_hostname = "localhost";
$mysql_db_user = "root";
$mysql_db_password = "";
$mysql_db_database = "emp";

$con = mysqli_connect($mysql_db_hostname, $mysql_db_user, $mysql_db_password) or die("Could not connect database");
mysqli_select_db($con, $mysql_db_database) or die("<div class='loginmsg'>Could not select database</div>");

if(mysqli_multi_query($con,"INSERT INTO t_emp (`e_id`,``,``) VALUES ('','',''); INSERT INTO t_emp_add (`e_id`,``,``) VALUES ('','',''); INSERT INTO t_emp_att (`e_id`,``,``) VALUES ('','',''); INSERT INTO t_emp_dep (`e_id`,``,``) VALUES ('','','');.....(etc);"))
{
 echo "Inserted";
}
else{
 echo "Not Inserted";
 }
Run Code Online (Sandbox Code Playgroud)

Is there any method to store into multiple tables..?

Abh*_*rma 2

MySQL doesn't support multi-table insertion in a single INSERT statement.

The problem that you are trying to solve by using a "single query" is solved by using transactions:

mysqli_query($con,"BEGIN");
mysqli_query($con,"INSERT INTO tab1 (col1, col2) VALUES('1', '2')");
mysqli_query($con,"INSERT INTO tab2 (col1, col2,col3) VALUES(1,2,3)");
mysqli_query($con,"COMMIT");
Run Code Online (Sandbox Code Playgroud)