1.SQLite数据库数据类型
Integer varchar(10) float double char(10) text
2.SQL语句
2.1 创建表的语句
create table 表名(字段名称 数据类型 约束, 字段名称 数据类型 约束...........)
create table person(id Integer primary key,name varchar(10),age Integer not null)
2.2 删除表
drop table 表名
drop table person
2.3 插入语句
insert into 表名[字段,字段] values(值1,值2)
insert into person(id,age) valuse(1,20) 这里表示的是指插入 id 和 age 的值
insert into person valuse(1,"zs",20) 表 没有指定字段名称要 valuse 的后面要从表结构的第一个字段开始,要求类型相同
2.4 修改数据
update 表名 set 字段=新值 where 修改的条件
update person set name = "ls" where id=1 就是把id=1的这一行的name的值改为ls
2.5删除语句
delete form 表名 where 删除条件
delete from person where id=2
2.6查询语句
select 字段名 from 表名 where 查询条件 group by 分组的字段 having 筛选的条件 order by 排序字段
select * from person 表示查询所有 *是通配符表示所有
select id name form person 表示查询 id和name的所有
select * from person where id=1 表示查询这张表 id=1的所有数据
select * from person where id<>1 表示查询这张表 id不等于1的所有数据 <>表示不等于
select * from person where id=1 and age>18 表示查询这张表 id=1 和 age>18的所有数据
select * from person where name like "%小%" 模糊查询 查询name里面带有小字的
select * from person where name like "_小%" 模糊查询 查询name里面带有小字的,并且一个字符过后是小,后面可以任意多
select * from person where name is null 查询这个名字为空的
select * from person where age between 10 and 20 表示查询age 10到20之间的
select * from person where age>18 order by id 根据id进行排序
2.Sqlite数据分页
/** * 分页查询数据库的记录 * @param pagenumber 每页多少条 * @param pagesize 每一个页面 * limit ? ? 第一个?表示每页下标 第二个?表示每页多少条 * 0,15 1页 * 15,15 2页 * 30,15 3页 * * rawQuery第二个参数接收一个数组 * 第一个数组 为每页多少条 * 第二个为在哪位置下标 */
rawQuery("select number,mode,name from blackNumber limit ? offset ?", arrayOf(pageSize.toString(), (pageSize * pageNumber).toString()))