繁体   English   中英

完全执行多重查询后,如何执行单个查询?

[英]How to execute a single query once the multi-query is fully executed?

一旦在PHP / MYSQL中完全执行了多查询,是否可以执行一个查询? 实际上,一旦完全执行多查询,我想在表中插入一条记录。

 public function create_tables($data)
{

      $email = $data['email'];
      $name = $data['name'];
      $storepassword = $data['storepassword'];
      $created_date = date('Y/m/d H:i:s');

    // Connect to the database
    $mysqli = new mysqli($data['hostname'], $data['username'], $data['password'], $data['database']);

    // Check for errors
    if (mysqli_connect_errno()) {
        return false;
    }

    // Open the default SQL file
    $query = file_get_contents('assets/install.sql');

    // Execute a multi query
   $mysqli->multi_query($query);

   $insert = "INSERT INTO `users` (`fullname`, `email`, `password`, `role_id`, `outlet_id`, `created_user_id`, `created_datetime`, `updated_user_id`, `updated_datetime`, `status`) VALUES
    ('$name', '$email', '$storepassword', 1, 0, 1, '$created_date', 1, '$created_date', 1)";

$mysqli->query($insert);

    // Close the connection
    $mysqli->close();

    return true;
}

在mutli_query之后添加它

while (mysqli->next_result()){
  //do nothing
}

这将导致执行循环遍历multi_query结果,从而迫使脚本等待直到multi_query被完全处理,然后再继续执行脚本的下一部分。

另一种方法是将最终查询包含在multi_query的末尾并作为其一部分

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM