PHP Mysqli从不同的数据库中选择、插入和更新
我试图从一个DB中选择值。并将结果插入并更新到另一个。这是需要每天运行的cronjob,以便将一些数据从一个数据库复制到另一个数据库。我知道我缺少正确的步骤/语法,但我希望有人能帮助我PHP Mysqli从不同的数据库中选择、插入和更新,php,mysql,select,mysqli,insert,Php,Mysql,Select,Mysqli,Insert,我试图从一个DB中选择值。并将结果插入并更新到另一个。这是需要每天运行的cronjob,以便将一些数据从一个数据库复制到另一个数据库。我知道我缺少正确的步骤/语法,但我希望有人能帮助我 <?php $con_1=mysqli_connect("host","user","pw","db"); // Check connection if (mysqli_connect_errno()) { echo "Failed to connect to MySQ
<?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);
?>
mysqli\u query
返回一个查询对象,使用$result[1]
没有意义,您需要在循环中获取行:
while($row = $result->fetch_assoc()) {
// insert result in second database
}
对于其他访问方法,请检查。看起来您正在执行SQL,但没有检查是否成功。在获得$result
后添加此项。检查PHP文档,查看出现错误时mysqli\u query
返回的内容(我相信它将是false
)。有关更多信息,请使用try-catch with-transactionssafe@JurienGroot从评论中很难看出,你可能应该问另一个问题,更好地解释你的问题。是的,出了问题。很抱歉。我试图让mysql\u受影响的行工作,但没有成功。不过,你对当前问题的回答很有效。谢谢