Android 开发笔记—— Sqlite

来源:互联网 发布:像素大厨 mac版下载 编辑:程序博客网 时间:2024/06/10 21:44
Android内部安装了了一个小型数据库Sqlite。这数据库与传统数据库相比体积少,系统消耗也很少,比较适合在Android这类手机系统里安装。Sqlite支持SELECT INSERT UPDATE CREATE DROP。
数据类型:TEXT文本,NUMERIC 数值,INTEGER 整型,REAL小数,NONE无类型

如何访问Android内部的Sqllite:
方式一:命令行方式(适合调试用)
可以使用 adb shell 进入设备后台,命令行方式手动创建,步骤如下:     
Eclipse 中启动模拟器之后, cmd 下输入进入设备 Linux 控制台
D:/>adb shell
之后进入应用 data 目录
# cd /data/data
ls 列表目录,查看文件,找到你的项目目录并进入
查看有无 databases 目录,如果没有,则创建一个
# mkdir databases
cd databases 进入并创建数据库
# sqlite3 friends.db
sqlite3 friends.db
SQLite version 3.5.9
Enter ".help" for instructions
sqlite>
ctrl+d 退出 sqlite 提示符 ls 列表目录会看到有一个文件被创建 friends.db
他就是 SQLite 的库文件
# ls
Ls
 
方式二:编码方式(使用更多)
android.content.Context 中提供了函数 , 注: Activity Context 的子类
openOrCreateDatabase () 来创建我们的数据库
db = context .openOrCreateDatabase(String DATABASE_NAME , int Context. MODE_PRIVATE , null );
String DATABASE_NAME   数据库的名字
Int MODE    操作模式 
Context.MODE_PRIVATE 等
CursorFactory 指针工厂
 
如何使用API:
SQLiteOpenHelper是一个抽象类,用于管理创建后的数据库
getReadableDatabase() 创建或者打开一个查询数据库
getWritableDatabase()创建或者打开一个可写数据库
他们都会返回SQLiteDatabase对象,用户通过得到的SQLiteDatabase对象进行后续操作。
 
同时用户还可以覆盖以下回调函数,再对数据库进行操作的时候回调以下方法:
onCreate(SQLiteDatabase):在数据库第一次创建的时候会调用这个方法,一般我们在这个方法里边创建数据库表。
onUpgrade(SQLiteDatabase,int,int):当数据库需要修改的时候,Android系统会主动的调用这个方法。一般我们在这个方法里边删除数据库表,并建立新的数据库表,当然是否还需要做其他的操作,完全取决于应用程序的需求。
onOpen(SQLiteDatabase):这是当打开数据库时的回调函数,一般也不会用到。

 

 

public class MySqlHepler extends SQLiteOpenHelper {    private static final String name ="user";    private static final int version = 1;    public MySqlHepler(Context context) {        super(context, name, null, version);    }    @Override    public void onCreate(SQLiteDatabase sqLiteDatabase) {        sqLiteDatabase.execSQL("CREATE TABLE IF NOT EXISTS user(id integer primary key autoincrement, name varchar(50), age integer)");    }    @Override    public void onUpgrade(SQLiteDatabase sqLiteDatabase, int i, int i1) {        //To change body of implemented methods use File | Settings | File Templates.    }}
原创粉丝点击