2013-08-27 81 views
0

我構建了一個應用程序併發布了它的一個版本,並讓它爲用戶服務,所以現場服務器的數據庫現在有一些實時數據。同時,我正在努力爲應用程序添加新功能,現在,隨着新的更改的準備就緒,我在本地數據庫上有一些重要數據,我希望將它們推送到實時數據庫服務器,而不會妨礙已存在的數據現場服務器。 任何人都可以提出合適的方法或過程來遵循和實現這一任務。 我正在開發應用程序使用Python 2.7.3和Django 1.4,我使用的數據庫是MySQL 5.5。如何在不影響已有數據的情況下將數據附加到現有數據庫?

數據庫表結構沒有變化,只需要插入數據而不影響現有數據。但是表格之間有很多關係。

在此先感謝。

回答

0

這完全取決於數據的性質和組織方式。

在最簡單的情況下,您只需添加額外的新數據;如果一些字段和表格發生了變化,它可能會變得更加複雜。

如果你更精確,你將能夠得到更準確的答案。


例如,你可以做

d1 = mysql.connect(database1) 
d2 = mysql.connect(database2) 

with d2 as c2: # new transaction 
    c2.execute("SELECT f1, f2, f3 FROM table") 
    with d1 as c1: 
     c1.executemany("INSERT INTO table (f1, f2, f3) VALUES (%s, %s, %s)", c2) 

如果你可以從1臺主機連接這兩個數據塊。

+0

感謝您的回覆,我更新了我的問題。數據庫表結構沒有任何變化,只是將本地數據庫中的新數據推送到實時數據庫。 – Prateek

+0

@Prateek然後我沒有看到問題。只需將新數據添加到舊錶中即可。你會得到不同的主鍵,但你可以複製的其他東西。怎麼做取決於你連接數據庫的方式。 – glglgl

+0

你可以請更明白,因爲我第一次處理這個問題,我必須使用mysql命令,如插入或更新,或者如果我採取datadump。對不起讓你煩惱的朋友。 – Prateek

相關問題