[發(fā)明專利]一種基于sqlite的數(shù)據(jù)同步傳輸方法有效
| 申請(qǐng)?zhí)枺?/td> | 201410159454.3 | 申請(qǐng)日: | 2014-04-21 |
| 公開(公告)號(hào): | CN103916482B | 公開(公告)日: | 2017-02-08 |
| 發(fā)明(設(shè)計(jì))人: | 王勝;吳現(xiàn)兵;李建;劉康寧 | 申請(qǐng)(專利權(quán))人: | 合肥盈云信息科技有限公司 |
| 主分類號(hào): | H04L29/08 | 分類號(hào): | H04L29/08;G06F17/30 |
| 代理公司: | 合肥天明專利事務(wù)所34115 | 代理人: | 張祥騫,奚華保 |
| 地址: | 230088 安徽*** | 國(guó)省代碼: | 安徽;34 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 基于 sqlite 數(shù)據(jù) 同步 傳輸 方法 | ||
1.一種基于sqlite的數(shù)據(jù)同步傳輸方法,其特征在于,包括以下步驟:
11)初始化本地?cái)?shù)據(jù)庫(kù),將sqlite數(shù)據(jù)庫(kù)模板拷貝到本地?cái)?shù)據(jù)庫(kù),作為智能終端(1)數(shù)據(jù)存儲(chǔ)的載體,并且在數(shù)據(jù)庫(kù)文件名稱中加入用戶ID號(hào),在數(shù)據(jù)庫(kù)中劃分出業(yè)務(wù)數(shù)據(jù)表和本地更新數(shù)據(jù)版本表;
12)本地?cái)?shù)據(jù)存儲(chǔ)更新,智能終端(1)將數(shù)據(jù)存儲(chǔ)到本地sqlite數(shù)據(jù)庫(kù),在數(shù)據(jù)庫(kù)中生成一條數(shù)據(jù)更新版本記錄并觸發(fā)數(shù)據(jù)同步模塊(3)進(jìn)行一次數(shù)據(jù)同步處理;
13)數(shù)據(jù)同步模塊監(jiān)聽網(wǎng)絡(luò),數(shù)據(jù)同步模塊(3)監(jiān)聽同步請(qǐng)求并檢測(cè)網(wǎng)絡(luò),根據(jù)網(wǎng)絡(luò)情況選擇上傳數(shù)據(jù)或回發(fā)請(qǐng)求命令;
14)服務(wù)器(2)接收數(shù)據(jù),服務(wù)器(2)接收到智能終端(1)同步請(qǐng)求的數(shù)據(jù),對(duì)其進(jìn)行業(yè)務(wù)邏輯判斷和處理后,將其更新到服務(wù)器(2)數(shù)據(jù)庫(kù)中;
15)服務(wù)器(2)反饋數(shù)據(jù),服務(wù)器(2)接收數(shù)據(jù)處理完成后,生成反饋數(shù)據(jù)發(fā)送給智能終端(1);
16)版本對(duì)比,智能終端(1)接收到反饋數(shù)據(jù)后,根據(jù)反饋數(shù)據(jù)的版本狀態(tài)與本地?cái)?shù)據(jù)進(jìn)行版本比對(duì),更新智能終端(1)本地?cái)?shù)據(jù)。
2.根據(jù)權(quán)利要求1所述的一種基于sqlite的數(shù)據(jù)同步傳輸方法,其特征在于,所述的本地?cái)?shù)據(jù)存儲(chǔ)更新包括以下步驟:
21)數(shù)據(jù)同步模塊(3)接收智能終端(1)所發(fā)出的業(yè)務(wù)數(shù)據(jù)處理指令;
22)判斷數(shù)據(jù)處理的指令類型;
23)若指令類型為查詢指令,則直接執(zhí)行并返回查詢結(jié)果;
24)若指令類型為新增數(shù)據(jù)指令,則分析該新增指令,獲取待新增數(shù)據(jù)指令的關(guān)鍵值,向本地更新數(shù)據(jù)版本表生成一條數(shù)據(jù)版本記錄,版本號(hào)Version為1,并在業(yè)務(wù)數(shù)據(jù)表中執(zhí)行新增版本記錄指令;
25)若指令類型為更新數(shù)據(jù)指令語句,則分析該更新數(shù)據(jù)指令,獲取待更新數(shù)據(jù)指令的關(guān)鍵值;判斷數(shù)據(jù)版本記錄中有無對(duì)應(yīng)的數(shù)據(jù),如無則在本地更新數(shù)據(jù)版本表生成一條數(shù)據(jù)版本記錄,版本號(hào)Version為1,并在業(yè)務(wù)數(shù)據(jù)表中執(zhí)行更新版本記錄指令;若有則在本地更新數(shù)據(jù)版本表的該版本記錄上將Version加1,并在業(yè)務(wù)數(shù)據(jù)表中執(zhí)行更新版本記錄指令。
3.根據(jù)權(quán)利要求1所述的一種基于sqlite的數(shù)據(jù)同步傳輸方法,其特征在于,所述的數(shù)據(jù)同步模塊監(jiān)聽網(wǎng)絡(luò)包括以下步驟:
31)當(dāng)本地更新數(shù)據(jù)版本表中版本表有記錄時(shí),通知數(shù)據(jù)用戶模塊(2)進(jìn)行智能終端(1)本地?cái)?shù)據(jù)的上傳處理;
32)數(shù)據(jù)同步模塊(3)監(jiān)聽同步請(qǐng)求,若檢測(cè)到網(wǎng)絡(luò)正常時(shí),主動(dòng)發(fā)起一次與服務(wù)器(2)的同步請(qǐng)求;若沒有監(jiān)聽到同步請(qǐng)求命令且網(wǎng)絡(luò)正常的情況下,數(shù)據(jù)同步模塊(3)在間隔規(guī)定的時(shí)間向自身發(fā)起一個(gè)請(qǐng)求命令;
33)上傳本地更新數(shù)據(jù)版本表,找到相應(yīng)的版本記錄,根據(jù)版本記錄到業(yè)務(wù)數(shù)據(jù)表中抽取更新數(shù)據(jù),數(shù)據(jù)按照業(yè)務(wù)數(shù)據(jù)表進(jìn)行分類,每個(gè)數(shù)據(jù)表的數(shù)據(jù)放在一個(gè)數(shù)組中,將對(duì)應(yīng)數(shù)據(jù)版本號(hào)Version也一同保存到數(shù)據(jù)結(jié)構(gòu)中;
34)數(shù)據(jù)結(jié)構(gòu)定義按照J(rèn)SON標(biāo)準(zhǔn)進(jìn)行組織,其中DownLoadTime為上次同步成功時(shí)間,第一次同步為空,TableList為列表類型值,包含更新數(shù)據(jù)表的數(shù)據(jù)定義,包括version字段,均以key-value的形式進(jìn)行定義;
35)將上次同步傳輸成功的時(shí)間告知服務(wù)器(2)接口。
4.根據(jù)權(quán)利要求1所述的一種基于sqlite的數(shù)據(jù)同步傳輸方法,其特征在于,所述的服務(wù)器接收數(shù)據(jù)包括以下步驟:
41)服務(wù)器(2)接收到上傳的數(shù)據(jù)后,檢查TableList列表中是否含有數(shù)據(jù),若含有數(shù)據(jù),則循環(huán)TableList列表,根據(jù)Table_1、Table_2或Table_n表名來判斷各表內(nèi)數(shù)據(jù)做不同的業(yè)務(wù)邏輯處理;
42)若對(duì)應(yīng)表中的數(shù)據(jù)符合相應(yīng)的業(yè)務(wù)邏輯,則判斷服務(wù)器(2)數(shù)據(jù)庫(kù)中是否已存在該條數(shù)據(jù),若存在則做更新處理,不存在則做新增處理;如果對(duì)應(yīng)表中的數(shù)據(jù)不符合相關(guān)的業(yè)務(wù)邏輯,則不將該條數(shù)據(jù)同步到服務(wù)器(2)數(shù)據(jù)庫(kù),并記錄下數(shù)據(jù)ID;?
43)若上傳的數(shù)據(jù)與服務(wù)器(2)數(shù)據(jù)發(fā)生沖突,判斷沖突類型;
若是服務(wù)器(2)和智能終端(1)同時(shí)修改了同一條數(shù)據(jù)時(shí),如果服務(wù)器(2)修改時(shí)間在先,智能終端(1)修改時(shí)間在后,則將智能終端(1)的數(shù)據(jù)覆蓋服務(wù)器(2)數(shù)據(jù),反之則不覆蓋服務(wù)器(2)數(shù)據(jù);
若智能終端(1)和服務(wù)器(2)所發(fā)生沖突為名稱或其它唯一字段發(fā)生重復(fù)沖突,則在上傳的數(shù)據(jù)發(fā)生沖突的字段后添加后綴標(biāo)識(shí)后再做數(shù)據(jù)更新。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于合肥盈云信息科技有限公司,未經(jīng)合肥盈云信息科技有限公司許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201410159454.3/1.html,轉(zhuǎn)載請(qǐng)聲明來源鉆瓜專利網(wǎng)。
- 一種具有SQLite數(shù)據(jù)庫(kù)的機(jī)頂盒
- 一種恢復(fù)移動(dòng)終端已刪除sqlite文件的方法及裝置
- 一種基于SQLite數(shù)據(jù)庫(kù)的主備冗余復(fù)制方法
- 一種清除SQLite數(shù)據(jù)庫(kù)中數(shù)據(jù)的方法
- 離線編輯同步方法
- 數(shù)據(jù)插入方法和裝置
- 一種免費(fèi)地圖影像數(shù)據(jù)的加密方法及裝置
- 一種Sqlite影像瓦片數(shù)據(jù)庫(kù)的自動(dòng)更新方法及裝置
- 一種數(shù)據(jù)查詢方法及裝置
- 一種SQLite數(shù)據(jù)庫(kù)文件安全存取方法及裝置
- 數(shù)據(jù)顯示系統(tǒng)、數(shù)據(jù)中繼設(shè)備、數(shù)據(jù)中繼方法、數(shù)據(jù)系統(tǒng)、接收設(shè)備和數(shù)據(jù)讀取方法
- 數(shù)據(jù)記錄方法、數(shù)據(jù)記錄裝置、數(shù)據(jù)記錄媒體、數(shù)據(jù)重播方法和數(shù)據(jù)重播裝置
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)發(fā)送系統(tǒng)、數(shù)據(jù)發(fā)送裝置以及數(shù)據(jù)結(jié)構(gòu)
- 數(shù)據(jù)顯示系統(tǒng)、數(shù)據(jù)中繼設(shè)備、數(shù)據(jù)中繼方法及數(shù)據(jù)系統(tǒng)
- 數(shù)據(jù)嵌入裝置、數(shù)據(jù)嵌入方法、數(shù)據(jù)提取裝置及數(shù)據(jù)提取方法
- 數(shù)據(jù)管理裝置、數(shù)據(jù)編輯裝置、數(shù)據(jù)閱覽裝置、數(shù)據(jù)管理方法、數(shù)據(jù)編輯方法以及數(shù)據(jù)閱覽方法
- 數(shù)據(jù)發(fā)送和數(shù)據(jù)接收設(shè)備、數(shù)據(jù)發(fā)送和數(shù)據(jù)接收方法
- 數(shù)據(jù)發(fā)送裝置、數(shù)據(jù)接收裝置、數(shù)據(jù)收發(fā)系統(tǒng)、數(shù)據(jù)發(fā)送方法、數(shù)據(jù)接收方法和數(shù)據(jù)收發(fā)方法
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)再現(xiàn)方法、數(shù)據(jù)發(fā)送裝置及數(shù)據(jù)再現(xiàn)裝置
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)再現(xiàn)方法、數(shù)據(jù)發(fā)送裝置及數(shù)據(jù)再現(xiàn)裝置





