使用GreenDao 添加字段,删除表,新增表操作

GreenDao 给我个人感觉 比一般的ORM框架要好很多,虽然说上手和其他的比起来,较复杂,但是如果使用熟练以后,你会爱上这个框架的

用这些ORM 框架给我的感觉都是,当升级时,都需要进行数据库所有表的删除,然后再重新创建表,这样的话,开发时候可以,但是真正的项目用,这是不允许的,因为如果用户升级了数据库,那么所有数据都被清空,会让用户反感。卸载应用的可能性就增大了。

greenDao的一系列操作 http://www.open-open.com/lib/view/open1438065400878.html 该网页描述的很清楚,需要的可以去看看

翻阅的人多文章,都大同小异,但是说到数据库升级的,却很少,要么就不可用。所有果断抛弃greendao,然后研究了一些其他的ORM框架,的确,上手更容易,但是,遇到同样的问题,就是当我需要删除,增加,某个表,字段时候,就比较麻烦了,有人说,可用进行数据迁移,的确,这可行,但是因为本人对数据库操作比较少,所有怎么弄也弄不对,然后给我的感觉就是,既然都差不多,那么我就用greenDao ,因为这东西当我用完其他的框架以后,回头来看,它还是比较舒坦的。

如果对GreenDao 感兴趣的 可以参考:
http://www.open-open.com/lib/view/open1438065400878.html

忘记sql 语法的 可以参考:
http://www.runoob.com/sqlite/sqlite-select.html

上述足够进行一般操作了,该文的重点是 GreenDao 添加某个字段,某个表,删除某个表操作

![1、首先创建两个表,一个后续将加个字段,一个后续会被删除]!(https://img-blog.csdn.net/20160303165025337)

2、运行程序,创建数据库 
现在我们就多了两个表

现在我们就给user这个表增加一个字段并且保留原有数据,然后删除temp 这个表,然后再增加一个表

这里写图片描述

然后修改DaoMaster里面的更新操作,自行写更新语句,进行更新

这里写图片描述

运行后 
这里写图片描述

先做个记录,以备后用

转载于:https://www.cnblogs.com/zhujiabin/p/9444358.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/366228.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

linux下log日志乱码_如何用 Linux 技巧大大提高工作效率?

作者 | 守望先生责编 | 屠敏前言Linux中的一些小技巧可以大大提高你的工作效率,本文就细数那些提高效率或者简单却有效的Linux技巧。命令编辑及光标移动这里有很多快捷键可以帮我们修正自己的命令。接下来使用光标二字代替光标的位置。删除从开头到光标处的命令文本…

Go语言基础之15--文件基本操作

一、文件读写 1.1 os.File os.File封装所有文件相关操作, 是一个自定义的struct。 a. 打开一个文件进行读操作: os.Open(name string) (*File, error) Open是以读的方式打开文件(底层调用的是Openfile函数)。 b. 关闭一个文件&…

UIBOT调试时步入的快捷键_远程调试 bug ,快速定位问题

情况是这样的,现在的产品出现了一个 bug ,需要及时排查快速解决,你是怎么样解决的呢?解决:登陆服务器,查看日志,看一下哪里有问题,然后本地运行程序进行debug ,解决后,在重新打包部署…

vim ctags java源码_如何使用vim的插件Ctags查看Linux源码

一.ubuntu下安装Linux内核源码(1).查看自己的内核版本(2).查看源内的内核源码类表(3).下载源码(4).进入/usr/src(5).解压下载的文件到用户主二.安装vim插件Ctags和使用插件的介绍Ctags工具是用来遍历源代码文件生成tags文件,这些tags文件能被编辑器或其它工具用来快…

MySql - GROUP BY 和 HAVING关键字

本文主要针对GROUP BY 和 HAVING两个关键字进行分析 使用测试表如下: 测试前,只知道GROUP BY 这个关键字的作用是根据一个字段进行分组,去重。HAVING对分组设置条件。 具体分组规则,设置条件不清楚。 测试开始 首先 单独使用GROUP…

浏览器缓存原理以及本地存储

作为一名前端工作人员,前端的缓存知识是必须掌握的,因为一个网站打开网页的速度直接关系到用户体验,用户粘度,而提高网页的打开速度有很多方面需要优化,其中比较重要的一点就是利用好缓存,缓存文件可以重复…

linux shell 宏定义_linux内核修炼之系统调用

fork()这个系统调用是有两个返回值的,在子进程中的返回值是0,在父进程中的返回值是PID,如下图 fork一次 返回两次关于0x80中断和特权级检查在mian函数的sched_init()函数中调用宏:set_system_gate(0x80,&system_call);将0x80号…

angularjs的$http请求方式

/*$http常用的几个参数$http服务的设置对象:1、method 字符串 表示发送的请求类型 get post jsonp等等2、url 字符串 绝对或者相对的URL,请求的目标3、params 字符串或对象 会被转化成查询字符串加到URL后面,如果不是字符串会被JSON序列化4、data 字符串或者对象 这…

response对象设置返回状态_postman 设置全局变量

postman大家都知道是一个测试接口的工具,也是目前比较流行的一种测试工具,但是postman只是用来将API地址和参数填入send一下就完了吗?其实不是,关于postman其实有很多玩法,对于测试来说我觉得掌握了postman是非常有必要…

测试过大输入的代码

在编写单元测试时,我们主要关注业务的正确性。 我们将竭尽所能,开开心心地走在最前沿。 我们有时会进行微基准测试并衡量吞吐量。 但是经常遗漏的一个方面是当输入过大时我们的代码如何表现? 我们测试了如何处理正常的输入文件,格…

资源不在java项目和构建路径上_编译单元不在Java项目的构建路径上-Maven

今天,我已经在日食中导入了一个Maven项目.当我尝试自动建议时,当我添加一些代码时,它提示我“编译单元不在Java项目的构建路径上”.我没有看到解决此问题的方法,但是都没有解决.这个应该做什么?xsi:schemaLocation"http://maven.apache.org/POM/4.0.0 http://m…

Django 第八课 2.【MySQL相关软件 mysqlclient Navicat Premium】

MySQL 驱动程序安装: 我们使用 Django 来操作 MySQL,实际上底层还是通过 Python来操作的。因此我们想要用 Django 来操作 MySQL,首先还是需要安装一个驱动程序。在python3中,驱动程序有多种选择。比如pymysql 以及mysqlclient等。…

查看串口的驱动信息

1、查看串口的驱动信息 2、驱动安装文件:http://www.wch.cn/download/CH341SER_EXE.html 3、参考驱动资料:https://blog.csdn.net/jazzsoldier/article/details/70169732 转载于:https://www.cnblogs.com/qy1234/p/10146303.html

java中怎么判断一段代码时线程安全还是非线程安全_Java 中的多线程你只要看这一篇就够了...

引如果对什么是线程、什么是进程仍存有疑惑,请先Google之,因为这两个概念不在本文的范围之内。用多线程只有一个目的,那就是更好的利用cpu的资源,因为所有的多线程代码都可以用单线程来实现。说这个话其实只有一半对,因…

实现 通过数据库里一个字段值相等 则把 他合为一条数据

需求: 把红色合为一条数据,绿色合为一条数据 结果: 不多说直接上代码......................................................... // 先查所有数据 const goods await service.goods.findAllGoodsWithParams({where: params,offset: ctx.p…

float与double类型参数区别_8大基本数据类型及包装类,不知道这些点别说自己是大佬...

一般地,当需要使用数字的时候,我们通常使用内置数据类型,如:byte、int、long、double 等。然而,在实际开发过程中,我们经常会遇到需要使用对象,而不是内置数据类型的情形。为了解决这个问题&…

9-客户端集成IdentityServer

1-创建客户端的webapi项目 E:\coding\netcore\IdentityServerSample>dotnet new webapi --name IdentityCredentialApi 2-在需要启用授权的方法上增加Authorize标签 3-使用nuget工具安装 IdentityServer4.AccessTokenValidation 4-启用客户端授权, 需要配置连接…

js替换数组中字符串实例

这个是替换数组中的一个对象字符串; 直接上代码: 1 var aaa[ 2 {"name":"张珊","sex":"man"}, 3 {"name":"李斯","sex":"woman"}, 4 …

ie浏览器升级_微软呼吁用户停用IE浏览器 2020年将不再更新升级

驱动中国2019年2月10日消息 IE浏览器作为美国微软公司推出的一款网页浏览器成为许多人接触互联网初选,深受不少用户喜欢但这款流畅多年的浏览器正式遭弃用!今日微软网络安全专家在在官方Winhows IT Pro上发帖呼吁用户停止使用IE浏览器!微软网…

CentOS安装zookeeper

第一步,先去Apache下载安装包 http://mirror.bit.edu.cn/apache/zookeeper/ 第二步,上传到服务器并解压 tar -zxvf zookeeper-3.4.6 第三步,新建一个文件夹 #先改个名 mv zookeeper-3.4.6 zookeeper cd zookeeper mkdir data 第四步&#xff…