2014-02-05 61 views
0

我正在創建一個與MySQL服務器連接的Android應用程序。現在爲了減少數據傳輸,我想給數據庫/表一個(md5?)散列值(如果可能),並將該散列發送給我的應用程序,並將其與應用程序上的數據的散列值進行比較。因此理論上,如果哈希值不同,服務器上的數據庫已經更新,然後應用程序應該從服務器下載數據。如果哈希值相同,則不應下載更新。檢查MySQL數據庫是否使用MD5散列更新

現在...這可能嗎?如果這是我應該如何實現這一目標? 我環顧四周,有人說你應該使用時間戳來查看它是否已經更新。 我更喜歡哈希,我不認爲它更好,但它只是一個偏好。

如何實現創建表的MD5,將其發送到應用程序,並將其與現有表的MD5進行比較。

TNX

+0

廣東話你有一個版本ID和比較的版本ID,而不是? – Srikanth

+0

我可以在默認情況下檢索表格的版本ID嗎?或者我應該爲此創建一個方法?因爲其他情況與檢索MD5相同 – Crimson

+0

我的意思是爲什麼沒有帶有VersionId的單獨列,只要底層數據發生變化就會更新,然後可以將其與服務器ID進行比較,以查看是否需要同步。計算整個表/數據庫的哈希值是一件代價昂貴的事情。 – Srikanth

回答

0

而不是整個表格轉換成MD5 u能保持在表中的列,這將動態變化的數據更新,然後只發送列值到應用程序,並compare.You可以使用cron作業自動檢查更新。

0

使用PHP的md5:

$password = md5($password); 
$query = "UPDATE user SET password='".$password."' WHERE username='".$username."'";