2014-08-27 53 views
1

如果我做了一個SQL轉儲,我只能得到一個選項來選擇插入,更新或替換查詢。我可以擁有它INSERT如果不存在,否則更新?MySQL的導入 - 我可以一起插入或更新

可能是一個簡單的答案,但我不確定。

+0

你試圖構建什麼樣的數據庫轉儲?這是不正常的,它必須應用於數據庫中的數據。 – tadman 2014-08-27 15:20:52

+0

'replace'選項適合你嗎? – udog 2014-08-27 20:33:03

+0

是替換插入和更新的組合嗎?有些數據會是新的。 也許我的工作流程關閉了,但是我有一個數據庫的開發網站和另一個網站。試圖找到以最少干擾更新現場網站的最佳方式。 – 2014-08-29 14:38:32

回答

1

相信REPLACE會爲你(replace mysqldump的選項)工作,因爲它的行爲是這樣的:如果是在REPLACE語句中的行數據匹配的目標表中存在行(基於PRIMARY KEYUNIQUE KEY值(S) ),該行中的數據將被刪除並替換爲源(轉儲文件)行中的數據。如果沒有這樣的匹配,則將源行插入到目標表中。