我從我通過PhpMyAdmin在本地存儲在MySQL數據庫中的數據庫中導出了幾個條目,並且我只想替換在線託管的目標數據庫上的條目。不幸的是,當我嘗試這樣做PHPMyAdmin說,這些帖子已經存在,因此他不能抹去它們。通過PHPMyAdmin導入一些數據庫條目並覆蓋
這將需要我很多時間在其他帖子中手動搜索這些條目,並一次刪除一條,所以我想知道是否有任何解決方法以便在導入時覆蓋這些條目。
在此先感謝!
我從我通過PhpMyAdmin在本地存儲在MySQL數據庫中的數據庫中導出了幾個條目,並且我只想替換在線託管的目標數據庫上的條目。不幸的是,當我嘗試這樣做PHPMyAdmin說,這些帖子已經存在,因此他不能抹去它們。通過PHPMyAdmin導入一些數據庫條目並覆蓋
這將需要我很多時間在其他帖子中手動搜索這些條目,並一次刪除一條,所以我想知道是否有任何解決方法以便在導入時覆蓋這些條目。
在此先感謝!
這是一個快速和骯髒的方式來做到這一點。其他人可能有更好的解決方案:
這聽起來像你試圖運行INSERT查詢,並且phpMyAdmin告訴你他們已經存在。如果您使用UPDATE查詢,則可以更新信息。
我會將您擁有的查詢複製到文本編輯器中,最好是能夠處理查找和替換的文件編輯器,如Notepad ++或Gedit,然後替換一些代碼以將查詢從INSERT更改爲UPDATE。
請參見:http://dev.mysql.com/doc/refman/5.0/en/update.html
或者,你可以直接刪除它們,然後運行INSERT查詢。
您可能可以使用查找和替換的一些邏輯來創建一個DELETE查詢,以便首先擺脫它們。
退房insert on duplicate。您可以將語法添加到本地存儲的條目中,也可以導入到臨時數據庫中,然後運行INSERT ... SELECT ... ON DUPLICATE KEY UPDATE
。如果您可以發佈架構,它會幫助我們更好地指導您。
編輯你的問題,並在sqlfiddle上分享你的出口和出口entires(只有幾個原始/真正的條目),並在此處給出鏈接。然後在幾分鐘內得到你的結果:) – Sami
似乎你有一個主鍵,限制相同的條目重複。如果是這種情況,如果您有興趣,您可以通過存儲過程獲得解決方案。怎麼樣?從一個表中選擇記錄並通過循環逐一插入行,使用1062的繼續處理程序進行復制 – Sami