2014-02-05 34 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."'";