个人网站www.pixysoft.net设计系列: 数据库同步的实现

Iteration 1
.对于本地新增的数据,版本号全部为0
.上传成功后,版本自动加1
.上传失败则直接返回(Web V <= Local V)
.下载成功后,修改本地版本号
.下载失败,直接返回(Web V >= Local V)

Interation 2
.CVCL放在本地端.
.本地直接操作数据库的时候不修改版本(新增的数据自动设0)
.当确定同步的时候,本地数据版本+1,然后上传.如果成功则保存两地版本
.如果失败,则返回失败信息通知处理

Interation 3
.在数据库字段里面添加mark字段,表示是否被修改.
.上传的时候读取mark字段,作为上传内容.
.上传/下载成功后,mark字段自动被设置为false。
.本地数据Insert/update的之后自动设置Mark = true

Interation 4
。在WebDatabase数据库操作类里面增加对mark的控制
。写一个CVController: 放在Database上面.里面提供了与Database一样的接口,通知增加了额外的操作

//Database Method
public Insert / change the mark for the data.
public Update / change the mark for the data.

private ActivateMark
private DeActivateMark

private InitVersion / When create a new data, it should initiate the version for that data.

//Net work method
public Download / download the data from Web: get local data according to the download data, compare the version, insert / update the correct data and list the error data.
public Upload / upload the data to the Web: select all the markTrue data, increate the version and upload.

private IncreateVersion / When upload, the data should pass this method to increate version.
private CompareVersion / When download, the data should be compared with those in local database, and list the conflict ones.

Interation 5 数据删除
。当本地删除了数据,如果是Download,则直接插入/ 如果是Upload,则提示是否删除目标数据
。目标删除了数据(默认为没添加数据),Download 则提示是否删除本地数据.Upload则直接插入

to be continued ...

转载于:https://www.cnblogs.com/zc22/articles/555389.html

个人网站www.pixysoft.net设计系列: 数据库同步的实现相关推荐

  1. 大型网站架构设计系列总结

    大型网站架构设计系列-我的总结如下: 1. 数据结构和产品架构设计,这是基础! 2. 角色分开,各司其职(web服务器,缓存服务器,负载平衡,数据库等) 3. HTML静态化(用缓存服务器也可) 4. ...

  2. 数据库设计系列[04]组织结构加入权限系统

    1引言 接着上一篇随笔"数据库设计系列[03]权限系统":在上篇随笔中,只是简单地介绍基于角色和操作访问控制模型,能把权限控制到页面和按钮.CDM图: 2 新的需求:组织结构 比如 ...

  3. java计算机毕业设计旅游网站设计源代码+数据库+系统+lw文档

    java计算机毕业设计旅游网站设计源代码+数据库+系统+lw文档 java计算机毕业设计旅游网站设计源代码+数据库+系统+lw文档 本源码技术栈: 项目架构:B/S架构 开发语言:Java语言 开发软 ...

  4. UML设计系列(8):数据库关联关系图

    传送门 UML设计系列(1):状态机图 UML设计系列(2):类图 UML设计系列(3):时序图 UML设计系列(4):用例图 UML设计系列(5):系统依赖图 UML设计系列(6):活动图 UML设 ...

  5. 【IT名人堂】一个神奇的网站:58同城背后的数据库设计实践

    大家好,我是主持人皮皮,欢迎大家做客第116期名人堂.58同城,一个被贴上"神奇"标签的网站,海量信息背后到底支撑的数据库是什么?当并发访问量相当密集的时候,这些数据库系统都会采取 ...

  6. .NET企业级应用架构设计系列

    一..NET企业级应用架构设计系列之技术选型 这里说的技术选型实际上是指技术方向的选择,或者叫平台方案的选择,也或者叫技术路线等,总之是大方向的把握.假定项目背景是要做一个中型WEB系统,公司组建新的 ...

  7. 软件设计之 数据库设计

    [按语:在软件设计或是动态网站开发中,数据库设计时很重要,我觉得可以说是开发工作的核心部分,所以学好数据库设计,是很重要的,也是大有前途的...]  ◆.概念 首先要搞清楚容易混淆的两个概念:&quo ...

  8. .NET企业级应用架构设计系列之应用服务器

    本文属spanzhang(张友邦)原创,发布地址为:http://blog.csdn.net/spanzhang.转载或引用请注明原文之出处,谢谢! .NET企业级应用架构设计系列之开场白 .NET企 ...

  9. java动漫网站开题报告_基于java的校园论坛网站的开发与设计开题报告.doc

    基于java的校园论坛网站的开发与设计开题报告 太 原 科 技 大 学 华 科 学 院 毕业设计开题报告 学 生 姓 名:学 号:学 院.系:专 业:论 文 题 目:指导教师: 2015 年 3 月1 ...

最新文章

  1. 认识Web前端、Web后端、桌面app和移动app新开发模式 - 基于Node.js环境和VS Code工具...
  2. 今天看到这篇新闻之后,决定休息一下咯
  3. 网络推广平台浅析通常网站关键词优化密度该如何把控呢?
  4. 标准成本、目标成本、实际成本
  5. C语言 满分代码:L1-043 阅览室 (20分)(解题报告)
  6. HDU 5573 Binary Tree 构造
  7. AutoCAD .net 二次开发官方教程及源码C#版(4)-(源码下载)
  8. 使用mkdir创建同级多目录
  9. 用maven搭建多模块项目
  10. 中无法打开源文件_Safari浏览器无法打开,如何解决Safari在Big Sur中崩溃的情况...
  11. web memory
  12. treeview wpf代码设置选中_C# WPF过渡效果实现(Transitions)
  13. Linux中线程使用详解
  14. λ^n |λI−AB|= λ^m |λI−BA|
  15. android深度探索第二章
  16. 项目管理软件之禅道和JIRA的共同点与区别
  17. 各品牌智能电视刷机怎么寻找对应固件包?详细图文教程分享
  18. 画二元函数即三维图像的函数及matlab代码
  19. 门函数卷积_卷积及其应用
  20. macOS Monterey 12.6.1 (21G217) 正式版 ISO、IPSW、PKG 下载

热门文章

  1. 南华大学编译原理----词法分析器的设计与实现、语法分析器的设计与实现
  2. 杭电计算机学院复试真题,2020杭州电子科技大学计算机学院考研复试公告
  3. C语言——指针(入门详解)
  4. 设计行业高效办公秘籍——趁手的设计软件
  5. IT招标书(医疗商务平台)
  6. python物联网工具
  7. C# Winform应用程序占用内存较大解决方法整理(转)-- SetProcessWorkingSetSize
  8. linux环境变量应该配置在哪里?
  9. Vivado Error: (vlog-7) Failed to open design unit file
  10. 2023泰迪杯数据挖掘赛B题完整成品讲解