【发布时间】:2014-10-18 11:03:01
【问题描述】:
我正在尝试从一个数据库中选择值。并将结果插入并更新到另一个中。这是需要每天运行以将一些数据从一个数据库复制到另一个数据库的 cronjob。我知道我缺少步骤/正确的语法,但我希望有人可以帮助我。
<?php
$con_1=mysqli_connect("host","user","pw","db");
// Check connection
if (mysqli_connect_errno()) {
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
$con_2=mysqli_connect("host","user","pw","db");
// Check connection
if (mysqli_connect_errno()) {
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
$result = mysqli_query($con_1,"SELECT id, name FROM table GROUP BY 1,2");
$mysqli->query($con_2, "INSERT INTO `table2`(`id`, `name`) VALUES ('".$result[1]."', ".$result[2].")
ON DUPLICATE KEY UPDATE name = ".$result[2]."");
}
mysqli_close($con_1);
mysqli_close($con_2);
?>
【问题讨论】:
-
看起来您正在执行 SQL 但没有检查它是否成功。在您获得
$result后添加此内容。检查 PHP 文档,看看mysqli_query在出错的情况下返回什么(我相信它会是false)。 -
使用 try catch 和事务dev.mysql.com/doc/refman/5.0/en/commit.html 更安全
标签: php mysql select mysqli insert