2010-11-09 118 views
1

大家好,我有一個問題。如何將sqlite同步到遠程mysql?

一個SQLite有大約15桌,而MySQL same.i想的SQLite到MySQL每小時​​同步,可以 我該怎麼辦?

我有一個想法,使用(腳本/ PHP)導出sqlite'tables值和(發送到MySQL或發送網址),和MySQL使用(腳本/ PHP)更新DB.but這種方式就像不好。

或者有一些我可以使用的工具?

謝謝大家。

+0

結帳http://stackoverflow.com/questions/1025812/synchronizing-an-sqlite-client-database-with-a-mysql-server-database – rwilliams 2010-11-09 16:00:56

回答

4

如果您不想每次都進行完整的導出/導入,您必須在每個表中包含「last_modified」字段,該字段包含該行最後修改時間的日期。然後在每個同步,保存當前的時間戳,並在隨後的同步,問題像查詢:

SELECT * FROM表,其中LAST_MODIFIED> $ last_sync_timestamp

..和你得到你更新的行的列表。

請注意,這不會「傳播」從表中刪除的行。與其刪除這些行,您需要做的是另一個名爲「可見性」的字段,當記錄被刪除時將其切換爲false,並修改應用程序以便不顯示所述行。然後讓你的同步代碼實際上在一定數量的同步之後從表中刪除「不可見」行。

希望這會有所幫助。