Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 截断多个数据库中的mysql表_Php_Mysql - Fatal编程技术网

Php 截断多个数据库中的mysql表

Php 截断多个数据库中的mysql表,php,mysql,Php,Mysql,在尝试提交之前,我需要清理几个数据库中的几个表 $db_server = include('root.php'); if (!$db_server) die("Unable to connect to MySQL: " . mysql_error()); $sqla = "TRUNCATE TABLE `info`.`2012_august`"; $sqlb = "TRUNCATE TABLE `stu`.`2012_august`"; $sqlc = "TRUNCATE TABLE `stu`

在尝试提交之前,我需要清理几个数据库中的几个表

$db_server = include('root.php');
if (!$db_server) die("Unable to connect to MySQL: " . mysql_error());
$sqla = "TRUNCATE TABLE `info`.`2012_august`";
$sqlb = "TRUNCATE TABLE `stu`.`2012_august`";
$sqlc = "TRUNCATE TABLE `stu`.`2012`";
if (@mysql_query($sqla))
    {
    echo ("success"."</br>");
    }
else
{
    echo ("un success".mysql_error()."</br>");
     }
$db_server=include('root.php');
如果(!$db_server)死亡(“无法连接到MySQL:.MySQL_error());
$sqla=“TRUNCATE TABLE`info`.`2012年8月`”;
$sqlb=“截断表`stu`.`2012年8月`”;
$sqlc=“截断表'stu`.'2012`”;
if(@mysql_query($sqla))
{
回声(“成功”。
”; } 其他的 { echo(“取消成功”.mysql\u error()。”
”; }

只有第一个表会清除其数据。我如何解决此问题。

您的代码仅在执行
$sqla
。您需要执行其他命令,或者将它们组合成一个用分号分隔的命令。

$a=array(“TRUNCATE TABLE`info`.`2012\u august`”,//创建一个查询数组
$a = array("TRUNCATE TABLE `info`.`2012_august`",   // create an array of queries
           "TRUNCATE TABLE `stu`.`2012_august`", 
           "TRUNCATE TABLE `stu`.`2012`");

foreach ($a as $value) {                            // iterate through array
    if (@mysql_query($value))
    {
        echo ("success"."</br>");
    } else {
        echo ("un success".mysql_error()."</br>");
    }
}
“截断表'stu`.'2012年8月'”, “截断表'stu`.'2012`”; foreach($a作为$value){//遍历数组 if(@mysql_query($value)) { 回声(“成功”。
”; }否则{ echo(“取消成功”.mysql\u error()。”
”; } }
您有

$sqla = "TRUNCATE TABLE `info`.`2012_august`";
$sqlb = "TRUNCATE TABLE `stu`.`2012_august`";
$sqlc = "TRUNCATE TABLE `stu`.`2012`";

要存储的值。但是您只使用了
$sqla
来存储。这就是其他值不存储的原因。
您必须使用逗号来存储所有值,或者
将所有值存储到数组中,并在存储时调用它们。

非常基本的调试将为您解决此问题-请不要使用
mysql.*
函数来编写新代码。它们不再得到维护,社区已经开始。看到了吗?相反,你应该学习并使用或。如果你不能决定哪一个,我会帮你的。如果你选择PDO,。我仍然是一个基础学习者。非常感谢你的帮助。@sadpcd基础学习者应该远离
mysql\uu
函数。初学者无法使用它们编写安全代码。非常感谢您的帮助。欢迎使用堆栈溢出!请不要使用
mysql.*
函数来编写新代码。它们不再得到维护,社区已经开始。看到了吗?相反,你应该学习并使用或。如果你不能决定哪一个,我会帮你的。如果选择PDO,。也不要使用错误抑制运算符。