gpt4 book ai didi

PHP MySQL 从 ODBC 插入和更新

转载 作者:行者123 更新时间:2023-11-30 00:28:04 24 4
gpt4 key购买 nike

我有一个 MySQL 数据库,它通过 ODBC 连接到本地 MS Access 数据库。

我目前的脚本可以正确地将数据从 MS Access 数据库插入到我的 MySQL 数据库。问题是 MS Access 数据库每天都会更新 - 所以我需要代码来更新我的 MySQL 数据库。

这是我所拥有的 - 结果是我没有收到任何错误,也没有任何更新(但是插入工作正常):

<?php
$conn=odbc_connect('Prod_Schedule','','');
if (!$conn) {
exit("Connection Failed:" . $conn);
}

$sql="SELECT `ID`, `WO_NUM`, `WO_LINE`, `SALES_CCN`, `SO`, `SO_LINE`, `SO_DELIVERY`, `MAS_LOC`, `DUE_DATE`, `FGC`, `HPL`, `DESCRIPTION` FROM `Schedule` WHERE `ID` > $refid AND `HPL` <> 'PART' AND LEN(HPL) > 0";
$rs=odbc_exec($conn,$sql);
if (!$rs) {
exit("Error in SQL");
}

$todays_date = date('m/d/Y', time());

while(odbc_fetch_row($rs)){

$sql = "INSERT INTO `production_schedule` (`ID`, `WO_NUM`, `WO_LINE`, `SALES_CCN`, `SO`, `SO_LINE`, `SO_DELIVERY`, `MAS_LOC`, `DUE_DATE`, `FGC`, `HPL`, `DESCRIPTION`) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)";

$stmt = $db->prepare($sql);

for($i=1;$i<=odbc_num_fields($rs);$i++){
$stmt ->bindValue($i, odbc_result($rs,$i));
}

$stmt ->execute();

$sqlup = "UPDATE `production_schedule`
SET
`ID` = ?,
`WO_NUM` = ?,
`WO_LINE` = ?,
`SALES_CCN` = ?,
`SO` = ?,
`SO_LINE` = ?,
`SO_DELIVERY` = ?,
`MAS_LOC` = ?,
`DUE_DATE` = ?,
`FGC` = ?,
`HPL` = ?,
`DESCRIPTION` = ?
WHERE `DUE_DATE` < '$todays_date'";

for($i=1;$i<=odbc_num_fields($rs);$i++){
$stmt ->bindValue($i, odbc_result($rs,$i));
}
$stmt ->execute();

}

odbc_close($conn);

?>

最佳答案

您应该使用 PHP cron 作业,以便可以运行日常脚本。

Here就是一个例子。

关于PHP MySQL 从 ODBC 插入和更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22721081/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com