我正在尝试编写一个简短的PHP脚本,它将从一个服务器上的表中进行选择并插入/更新到 在不同的服务器上的表。这是为了使我们的工作生产数据库与我们的所有内容保持同步 DB2数据库,以便我们可以在本地预先形成所有查询。
因此,我与两个数据库的连接都是成功的,我在DB2方面的SELECT语句也是成功的。该 唯一的问题我遇到的是我的INSERT / UPDATE程序,我没有收到错误,就像我没有 真的知道我应该怎么做。
我最初的想法是INSERT IGNORE,但我想知道它是否应该是在DUPLICATE KEY ..... UPDATE。
基本上,我前几天抛弃了DB2表并导入到mysql中,现在我只需要不断更新它。两个表 有大约15000条记录,有很多东西可以通过。我只需要查看DB2中的所有内容,如果有的话 一个全新的记录,插入它,或者如果在DB2中更新了手机或电子邮件,我想要更新 它在mysql方面。
记录可以包含与每个客户编号关联的公司编号1-5,这可能与更新有关 重复,但我仍然不确定最好的方法。
关于在这里做我需要的最佳方法的任何提示?
//Query for selecting records from DB2
$query1 = "select xcompn, xcstno, xbllnm, xcntpc, xcntec from jacmfg.custmstf";
$prep1 = odbc_prepare($DB2Conn, $query1);
$exec1 = odbc_execute($prep1);
//If either query fails
if (!$exec1) {
die('Could not update.');
}
else {
echo 'success';
}
//Query for inserting and updating on mysql
$stmt = mysqli_prepare($mysqlConn,
"INSERT ignore into ambition.ambition_customer_data(companyNumber, customerNumber, businessName,
phone, email )
VALUES (?, ?, ?, ?, ?)
ON duplicate key update
-- unfinished statement
") or die(mysqli_error( $conn2));