13 数据库 总结
第十三天 数据库
数据库存储 SQLite
一, 特点
轻量级数据库 绿色的 零配置 跨平台 嵌入式
在{本应用程序内的数据库} 可以在任何位置 通过数据库名称 访问数据库
其他程序 不能通过数据库名称 {应用程序内的数据库} 进行访问
存储位置:data/data/{包名}/database/**
二, 数据类型
NULL 空值
INTEGER 整型
TEXT 文本类型
VARCHAR 可变长度的字符数据
BOOLEAN 布尔
FLOAT 浮点
DOUBLE 双精度浮点型
DATETIME 时间
三, SQL语句 http://www.w3school.com.cn/sql/index.asp
1,创建数据库表
create table 表名(字段名 字段类型 primary key autoincrement,字段名 字段类型…..)
eg:create table person(_id integer primary key autoincrement,name varchar(16),age integer)
>2,插入数据
insert into 表名(字段) values (值)
eg:insert into person value(1,'aaa',23);
insert into (name,age) value('bbbb',30)
>3,修改数据
update 表名 set 字段名 = 值 where 字段 = 条件值
eg:update person set name = 'zhangsan' where _id = 2
>4,查询数据
select 字段名 from 表名 where 字段= 条件值
eg:select name from person where _id = 1
select * from person where name like '%h%'
>5,删除数据
delete from 表名 where 字段 = 条件值
eg:delete from person _id = 1
Api:\
db.insert(3个);
db.query(7个)
db.update(4个)
db.delete(3个)
四, 操作数据库的核心类
SqliteOpenHelper (数据库帮助类) 创建数据库
使用:1,创建一个类继承 SqliteOpenHelper类
2,实现里面的构造方法(数据库名称 版本设置上) 和 oncreate(创建数据库表) onOnpen(数据库是否打开操作)
3,在逻辑代码中 获取当前类的实例化对象 执行增 删 改 查(数据库语句 和Api)
>SqliteDatabase openDatabase() 以及存在数据库
//打开指定路径的数据库
db= SQLiteDatabase.openDatabase(path, null, SQLiteDatabase.OPEN_READWRITE);
SimpleCursorAdapter:注意:数据库的主键 必须是 _id
coursor.getCount() 得到游标中的数据数量
coursor.moveToNext() 游标移动到下一条数据, 并且判断下一条数据是否存在
coursor.moveToPrevious() 游标移动到上一条数据, 并且判断上一条数据是否存在
coursor.moveToFirst() 游标移动到第一条数据, 并且判断第一条数据是否存在
coursor.moveToLast() 游标移动到最后一条数据, 并且判断最后一条数据是否存在
coursor.moveToPosition(int position) 游标移动到某一条数据, 并且判断某一条数据是否存在
coursor.move(int offset) 游标向上或者向下移动指定的行数, 正数代表向上,负数代表向下, 并且判断数据是否存在
取值: corsor.getString(列的编号); //编号是从0开始
列的编号: corsor.getColumnIndex(“name”)