我有一個很大的MySQL數據庫,我將重要的數據提取到一個更小的MySQL數據庫中。大數據庫中的值不斷變化。較小的數據庫也應該動態變化。只有當值更改時才使用PHP更新MySQL數據庫
我能夠填充數據庫較小,只有當它是空的,使用此代碼:
$SQL_INSERT="INSERT LOW_PRIORITY IGNORE INTO oddsnavi_baby.calc (one , two, three)
VALUES ('$one', '$two' , '$three')";
mysql_db_query($database_baby, $SQL_INSERT) or die("Failed Query of " . $SQL_INSERT);
我想這是改變要更新的值。例如,如果$ 3與小數據庫中的'three'中的現有值不同,那麼'three'是該行中唯一更新的值。怎麼做?編號: 我收到以下代碼錯誤。我的語法有什麼問題?
$SQL_INSERT="INSERT LOW_PRIORITY IGNORE INTO oddsnavi_baby.calc (one , two, three)
VALUES ('$one', '$two' , '$three')
ON DUPLICATE KEY UPDATE oddsnavi_baby.calc SET two = '$two' , three = '$three'
WHERE one = '$one'";
我有過大的數據庫無法控制,所以我不能更新在同一個進程數據庫較小。我所說的這個更新應該是作爲一個cron作業運行的,所以它會在後臺完成。我只是尋找正確的代碼來更新較小的數據庫,而不是隻填充它,如果它是空的。像INSERT ON DUPLICATE KEY UPDATE之類的東西。 –