基于AndroidSQLite的使用介绍
在Android平台中,集成了一个嵌入式关系型数据库--SQLite,它支持
createtableperson(personidintegerprimarykeyautoincrement,namevarchar(20))//name的类型可省略;
select*fromtablenamewheretiaojiangroupby分组字句having...orderby排序字句
select*fromperson
select*frompersonorderbyiddesc/asc
selectnamefrompersongroupbynamehavingcount(*)>1
分页:select*fromAccountlimit5offset3或者select*fromAccountlimit3,5
insertintoperson(name,age)values("Livingstone",22)
updatepersonsetname="Livingstone"whereid=10
deletefrompersonwhereid=10
SQLiteDatabase专门提供了对于添加、删除、更新、查询的操作方法:insert(),delete(),update()和query();
Insert()方法用于添加数据,各个字段的数据使用ContentValues进行存放,ContentValues类似于MAP,相对于MAP,它提供了存取数据对应的put(Stringkey,Xxxvalue)和getAsXxx(Stringkey)方法;
longrowid=db.
不管第三个参数是否包含数据,执行Insert()方法必然添加一条记录,如果第三个参数为空,会添加一条除主键之外
其他字段值为Null的记录,Insert()方法内部其实是通过构造SQL语句完成数据的添加,第二个参数用于指定空值字段的名称:如果第三个参数values为Null或者元素个数为0,由于Insert()方法要求必须添加一条除了主键之外其它字段为Null值的记录,为了满足SQL语法要求,insert语句必须给定一个字段名,ex:insertintoperson(name)values(NULL),若不给字段名,insert语句就为:insertintoperson()values(),对于字段名,建议使用主键之外的字段,如果使用了INTEGER类型的主键字段,执行类似insertintoperson(personid)values(NULL)的insert语句后,该主键字段值也不会为NULL,若第三个参数values不为Null并且元素个数大于0,第二个参数设置为null。
相关文章
- Fabric.js 使用纯色遮挡画布(前景色)
- Git的使用
- 使用VBA基于列表移动工作表
- 【FusionCompute】基于FreeNAS部署并使用虚拟存储(五)
- 基于注解的Spring AOP的配置和使用详解编程语言
- 深入浅出:Linux 基于 Yum 的软件管理(linuxyum使用)
- 使用 Ansible 在树莓派上构建一个基于 Linux 的高性能计算系统
- 使用这个 Python 模块输入不可见的密码
- MySQL:默认空值的使用方法(mysql默认值为空)
- 「简明易懂」Linux客户端:轻松安装使用(linux的客户端)
- 解答在cmd中使用MySQL数据库(cmd中怎么用mysql)
- 使用Yii2框架实现基于Redis的高效缓存(yii2 redis缓存)
- MySQL中如何使用JOIN实现表之间的连接关系(mysql。join)
- TP51下基于Redis的快速开发应用(tp5.1redis使用)
- 使用Redis实现读写分离,提升性能(基于redis读写分离)
- 正则表达式的使用ASP
- 基于静态Singleton模式的使用介绍
- 基于java中BlockingQueue的使用介绍
- 基于mysql查询语句的使用详解
- 基于Java回顾之反射的使用分析
- 基于PHP字符串的比较函数strcmp()与strcasecmp()的使用详解
- 基于jdbc处理Clob的使用介绍
- 用js实现控件的隐藏及style.visibility的使用
- 基于php使用memcache存储session的详解
- sae使用smarty模板的方法
- node.js中的fs.futimesSync方法使用说明