我学习ophone里使用sqlite3
- 2020 年 1 月 14 日
- 筆記
写得很辛苦,大家觉得好的话请多多回帖支持我,有时间会发布第二篇
演示环境
Windows xp
Eclipse 3.4.2
Ophone SDK 1.0
一、 创建工程
在Eclipse里
File->new->Android project->输入工程名sqlite_demo等等如下图:->点击完成

二、建立数据库连接类
在src下oms.sqlite_demo下新建DBHelper类
写代码如下
/ * 类 DBHelper 代码 开始 * / 包oms。sqlite_demo ; 导入android。内容。语境 ; 导入android。数据库。sqlite。SQLiteDatabase ; 导入android。数据库。sqlite。SQLiteOpenHelper ; 导入android。数据库。sqlite。SQLiteDatabase。CursorFactory ; 导入android。实用程序。日志 ; / ** *数据库连接类 * * @ 作者 yifangyou 2010-01-15 * * / 公共类DBHelper 扩展了SQLiteOpenHelper { 私有静态SQLiteDatabase db = null ; / ** *连接数据库,数据库不存在则创建 * * @ param 上下文 上下文,内容上限文 * @ param String dbname,数据库名字 * @ param CursorFactory 工厂,数据库游标 * @ param int 版本,数据库版本 * @ return SQLiteDatabase 返回数据库操作类 * / 公共DBHelper (上下文上下文,字符串dbname,CursorFactory工厂, 内部 版本) { 超级(上下文,dbname,工厂,版本); } / ** *连接数据库,数据库不存在则创建 * * @ return SQLiteDatabase 返回数据库操作类 * / 公共SQLiteDatabase getconnect () { 如果(db == null ) { db = this。getWritableDatabase () ; } 返回db ; } / ** *接入数据库连接 * * @ 返回 无效 * / public void close () { 如果(db!= null ) { db。close () ; } } @ 覆写 公共无效onCreate (SQLiteDatabase arg0) { } @ 覆写 public void onUpgrade (SQLiteDatabase arg0, int arg1, int arg2) { } } / * 类 DBHelper 代码 结尾 * /
三、操作数据库
在sqlite_demo.java里的代码如下
oms.sqlite_demo; 导入 android.app.Activity; 导入 android.database.Cursor; 导入 android.database.sqlite.SQLiteDatabase; 导入 android.os.Bundle; 导入 android.util.Log; 公共类sqlite_demo 扩展了活动 { 私有最终字符串DB_NAME = “ testdb ” ; 私有最终字符串TABLE_NAME = “ 学生 ” ; / ** 调用 时 的 活性 是 先 创建。* / @ 覆写 公共无效onCreate (捆绑保存的InstanceState) { 超级。onCreate (savedInstanceState) ; setContentView (R.layout.main) ; DBHelper dbh = 新的DBHelper (this .getBaseContext (),DB_NAME, null ,1) ; SQLiteDatabase db = dbh。getconnect () ; createTable (db) ; queryTable (db) ; dbh。close () ; } 公共无效createTable (SQLiteDatabase db) { db。execSQL (“如果不存在则创建表” + TABLE_NAME + “(” + “ stud_no” + “文字” + “ stud_name” + “ TEXT” + “);” ) ; 串 sql_1 = “ 插入 到 ” + TABLE_NAME + “ (stud_no,stud_name) 值('S777' , '百合昌') ;” ; 串 sql_2 = “ 插入 到 ” + TABLE_NAME + “ (stud_no,stud_name) 值('S888' , '琳达林') ;” ; 串 sql_3 = “ 插入 到 ” + TABLE_NAME + “ (stud_no,stud_name) 值('S999' , '布鲁斯王') ;” ; db。execSQL (sql_1) ; db。execSQL (sql_2) ; db。execSQL (sql_3) ; } 公共无效queryTable (SQLiteDatabase db) { 字符串 str = “ select * from ” + TABLE_NAME ; 光标 c = db。rawQuery (str,null ) ; 日志。v (“ loginactive”,“查询记录”); 日志。v (“ loginactive”,String.valueOf (c.getCount ()) ) ; 如果(c!= null ) { c。moveToFirst () ; while (!c.isLast ()) { 日志。v (“ loginactive”,“ outp。”); 字符串 stud_no = c。getString (0) ; 字符串 stud_name = c。getString (1) ; 系统。出来。println (stud_no + “ ---------------” + stud_name) ; 日志。v (“ loginactive”,stud_no + “ ---------------” + stud_name) ; c。moveToNext () ; } } } }
四、启动DDMS
在eclipse里
Window->New Perspective->DDMS

五、运行
选择">"里的run configure->如下图填完后->apply->run

六、查看结果
点击run后马上点击右上角的DDMS就能在log里看到结果

七、命令行下查看数据库
Cd $OPHONE_HOME/tools
adb pull /data/data/oms.sqlite_dmoe/databases/testdb test.db
sqlite3 test.db
