用INSERT INTO SELECT FROM的php命令我错过了什么?

时间:2016-03-04 19:31:42

标签: php mysql insert-into mysqli-multi-query

我有一个数据库,它包含四个表(为了安全起见,我给了他们迪士尼角色名称),名为huey,dewey,lewey和uncledonald。

我想从dewey表中的deweysays列中获取数据,hueyay表中的hueysays和lewey表中的leweysays显示在表uncledonald中的相应列中。参见附图,看看我的意思。

4 tables

我已经尝试了以下代码并获得了我想要的结果,但只获得了一次。之后,我在dewey,huey和lewey表中获取数据,但在uncledonald table中没有其他内容。

    <?php

//Let's see whether the form is submitted
 if (isset ($_POST['submit'])) { 


$con=mysqli_connect("localhost","root","root","provingground");
// Check connection
if (mysqli_connect_errno())
  {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
  }

  $sql = "INSERT INTO dewey (lot_id, deweysays) VALUES (0, '{$_POST['deweyspeak']}');";
  $sql .= "INSERT INTO huey (cust_id, hueysays) VALUES (0, '{$_POST['hueyspeak']}');";
  $sql .= "INSERT INTO lewey (personal_id, leweysays) VALUES (0, '{$_POST['leweyspeak']}');";
  $sql .= "INSERT INTO uncledonald (deweysays) SELECT deweysays FROM dewey ";
  $sql .= "INSERT INTO uncledonald (hueysays) SELECT hueysays FROM huey ";
  $sql .= "INSERT INTO uncledonald (leweysays) SELECT leweysays FROM lewey ";

  // Execute multi query
if (mysqli_multi_query($con,$sql)){

print '<p> The Ducks Have Spoken.</p>'; 

 } else { 

 die ('<p>Could not add entry because:<b>' . mysqli_error() . '</b>.</p><p>The query being run was: ' . $sql . '</p>'); 
}


}
mysqli_close($con);

?>

我的$ sql查询中是否缺少某些内容给uncledonald?请帮忙!

0 个答案:

没有答案
相关问题