繁体   English   中英

用PHP执行SQL查询

[英]Execute SQL Query with PHP

我不熟悉使用PHP运行SQL命令,但是我想做的是在运行脚本时截断数据库中的特定表。 我可以仅将一个表截断,但是当我尝试多个表时会遇到问题! 代码在下面,是否有指针? 提前致谢

 <?php
    var_dump($_POST);
    $myServer = $_POST['host'];
    $myUser = $_POST['user'];
    $myPass = $_POST['password'];
    $myDB = $_POST['db'];

    $con = mysqli_connect($myServer, $myUser, $myPass) or die("Connection 
    Failed");
    mysqli_select_db($con, $myDB)or die("Connection Failed");


    $query = ("
        SET FOREIGN_KEY_CHECKS = 0;

        TRUNCATE table customers;

        TRUNCATE table customers2;

        SET FOREIGN_KEY_CHECKS = 1;


    ");

    if(mysqli_query($con, $query)){
    echo "table empty";}
    else{
     echo("Error description: " . mysqli_error($con));}


    ?>

一次执行一个查询

mysqli_query($con, "SET FOREIGN_KEY_CHECKS = 0;");
mysqli_query($con, "TRUNCATE table customers;");
mysqli_query($con, "TRUNCATE table customers2;");
mysqli_query($con, "SET FOREIGN_KEY_CHECKS = 1;");

或使用mysqli_multi_query

mysqli_multi_query($con, "
SET FOREIGN_KEY_CHECKS = 0; 
TRUNCATE table customers;
TRUNCATE table customers2;
SET FOREIGN_KEY_CHECKS = 1;
");

mysqli_query只允许一个查询。 如果要一次使用多个查询,请使用mysqli_multi_query 文档: http : //php.net/manual/en/mysqli.multi-query.php

在您的代码中,您将进行更改

mysqli_query($con, $query)

mysqli_multi_query($con, $query)

暂无
暂无

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

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