我有一個理論問題,因爲我還處於思維階段,因此沒有代碼。我想更新一個應用程序,以允許用戶通過DropBox數據存儲或其他類似的方式與他人分享他們的數據。但是,當用戶創建的數據填充到設備上的多個sqlite表時,每個表都有一個自動增量整數作爲主鍵,在其他表中用作外鍵來鏈接數據。在Android應用程序用戶之間共享數據
如果有多個用戶實際創建數據並共享它,那麼主鍵列顯然會成爲問題。如果我下載數據並將其存儲在本地,我顯然不能將用戶1的密鑰值插入到用戶2的數據表中,首先是因爲自動遞增,其次是因爲用戶2可能已經具有不與該密鑰值一起保存的數據。
我想過幾個選項,但沒有什麼特別吸引人或強大。我正在考慮創建一個UUID來識別設備,該值必須存儲在每個表中,而主鍵將是該列和當前主鍵整數的組合,這顯然必須具有自動更新功能,刪除增量。因此,爲了從每個表中獲取所有相關數據,必須使用id列和UUID列。
我覺得有必要有一個更強大的方法來實現這個雖然,任何人有更好的建議嗎?
我認爲用UUID的想法很好。我會爲主鍵字段使用UUID和時間戳的組合。 Pehrhaps時間爲毫秒。這可以工作,如果用戶不能創建mor,然後每millisecound一個記錄 –
因爲你提到他們,我應該指出,Dropbox數據存儲(還)不支持用戶之間的共享。 – smarx
我知道,如果我使用它們的解決方法是讓用戶連接到同一個Dropbox帳戶,以便稍後設置一個實際的SQL服務器來託管數據。 – collusionbdbh