我学习ophone里使用sqlite3

写得很辛苦,大家觉得好的话请多多回帖支持我,有时间会发布第二篇

演示环境

Windows xp
Eclipse 3.4.2
Ophone SDK 1.0
 
一、 创建工程
在Eclipse里
File->new->Android project->输入工程名sqlite_demo等等如下图:->点击完成
 

 

二、建立数据库连接类
在src下oms.sqlite_demo下新建DBHelper类
写代码如下
 
  
  
  
  
  1. /*class DBHelper code start*/ 
  2. package oms.sqlite_demo; 
  3.  
  4. import android.content.Context; 
  5. import android.database.sqlite.SQLiteDatabase; 
  6. import android.database.sqlite.SQLiteOpenHelper; 
  7. import android.database.sqlite.SQLiteDatabase.CursorFactory; 
  8. import android.util.Log; 
  9.  
  10. /** 
  11.  * 数据库连接类 
  12.  *  
  13.  * @author yifangyou 2010-01-15 
  14.  *  
  15.  */ 
  16. public class DBHelper extends SQLiteOpenHelper { 
  17.     private static SQLiteDatabase db = null
  18.     /** 
  19.      * 连接数据库,数据库不存在则创建 
  20.      * 
  21.      * @param Context context, 内容上限文 
  22.      * @param String dbname, 数据库名字 
  23.      * @param CursorFactory factory, 数据库游标 
  24.      * @param int version, 数据库版本 
  25.      * @return SQLiteDatabase 返回数据库操作类  
  26.      */ 
  27.     public DBHelper(Context context, String dbname, CursorFactory factory, 
  28.             int version) { 
  29.         super(context, dbname, factory, version); 
  30.     } 
  31.     /** 
  32.      * 连接数据库,数据库不存在则创建 
  33.      * 
  34.      * @return SQLiteDatabase 返回数据库操作类  
  35.      */ 
  36.     public SQLiteDatabase getconnect() { 
  37.         if (db == null) { 
  38.             db = this.getWritableDatabase(); 
  39.         } 
  40.         return db; 
  41.     } 
  42.     /** 
  43.      * 断开数据库连接 
  44.      * 
  45.      * @return void  
  46.      */ 
  47.     public void close() { 
  48.         if (db != null) { 
  49.             db.close(); 
  50.         } 
  51.     } 
  52.  
  53.     @Override 
  54.     public void onCreate(SQLiteDatabase arg0) { 
  55.  
  56.     } 
  57.  
  58.     @Override 
  59.     public void onUpgrade(SQLiteDatabase arg0, int arg1, int arg2) { 
  60.  
  61.     } 
  62. /* class DBHelper code end */ 

三、操作数据库

sqlite_demo.java里的代码如下

 

  
  
  
  
  1. package oms.sqlite_demo; 
  2.  
  3. import android.app.Activity; 
  4. import android.database.Cursor; 
  5. import android.database.sqlite.SQLiteDatabase; 
  6. import android.os.Bundle; 
  7. import android.util.Log; 
  8.  
  9.  
  10. public class sqlite_demo extends Activity { 
  11.     private final String DB_NAME = "testdb"
  12.     private final String TABLE_NAME = "student"
  13.     /** Called when the activity is first created. */ 
  14.     @Override 
  15.     public void onCreate(Bundle savedInstanceState) { 
  16.         super.onCreate(savedInstanceState); 
  17.         setContentView(R.layout.main); 
  18.         DBHelper dbh=new DBHelper(this.getBaseContext(),DB_NAME, null,1); 
  19.         SQLiteDatabase db= dbh.getconnect(); 
  20.         createTable(db); 
  21.         queryTable(db); 
  22.         dbh.close(); 
  23.     } 
  24.      
  25.      
  26. public void createTable( SQLiteDatabase db){ 
  27.         db.execSQL("CREATE TABLE IF NOT EXISTS " + TABLE_NAME + " (" 
  28.                 + "stud_no" + " TEXT," 
  29.                 + "stud_name" + " TEXT" 
  30.                 + ");"); 
  31.      
  32.         String sql_1 = "insert into "+ TABLE_NAME +" (stud_no, stud_name) values('S777', 'Lily Chang');"
  33.         String sql_2 = "insert into " + TABLE_NAME +" (stud_no, stud_name) values('S888', 'Linda Lin');"
  34.         String sql_3 = "insert into " + TABLE_NAME +" (stud_no, stud_name) values('S999', 'Bruce Wang');"
  35.         db.execSQL(sql_1); db.execSQL(sql_2); db.execSQL(sql_3); 
  36.     } 
  37.     public void queryTable(SQLiteDatabase db){ 
  38.         String str="select * from "+TABLE_NAME; 
  39.         Cursor c =db.rawQuery(str,null); 
  40.          
  41.         Log.v("loginactive","查询记录"); 
  42.         Log.v("loginactive",String.valueOf(c.getCount()) ); 
  43.         if(c!=null){ 
  44.             c.moveToFirst(); 
  45.             while(!c.isLast()){ 
  46.                 Log.v("loginactive","outp."); 
  47.                 String stud_no=c.getString(0); 
  48.                 String stud_name=c.getString(1); 
  49.                 System.out.println(stud_no+"---------------"+stud_name); 
  50.                 Log.v("loginactive",stud_no+"---------------"+stud_name); 
  51.                 c.moveToNext(); 
  52.             } 
  53.         } 
  54.  
  55.     } 

四、启动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

 

 

 

你可能感兴趣的:(android,数据库,sqlite,教程,休闲)