android数据库SQLite简单测试
2014-02-14 14:43 kingshow 阅读(1747) 评论(0) 编辑 收藏 举报SQLite是文本型的数据库,这里是简单的数据库创建和数据库升级。上班闲得无聊,突然想起昨天有人问android数据库的创建和升级,所以简单记录一下,高手没有必要看这个博文 O(∩_∩)O~
一、首先看一下整个工程目录
二、创建android工程名db_test,打开AndroidManifest.xml文件,添加单元测试
点击instrumentation->add,然后再右边Name行处,点击Browser,添加InstrumentationTestRunner;在Target package行处,点击Browser添加自己应用包名(这里是com.bruce.db_test)
注意:在完成上述操作后,要在<application></application>节点中添加<uses-library android:name="android.test.runner"/>节点,如图:
三、创建DbOpenHelper类,继承SQLiteOpenHelper类,具体代码如下:
package com.bruce.db_test.db; import android.content.Context; import android.database.sqlite.SQLiteDatabase; import android.database.sqlite.SQLiteDatabase.CursorFactory; import android.database.sqlite.SQLiteOpenHelper; import android.util.Log; public class DbOpenHelper extends SQLiteOpenHelper { private String TAG = "MyTest"; private static String name = "mydb.db"; private static int version = 2; public DbOpenHelper(Context context) { super(context, name, null, version); Log.i(TAG, "111->DbOpenHelper"); } @Override public void onCreate(SQLiteDatabase db) { Log.i(TAG,"222->onCreate begin"); String sql = "create table person(id integer primary key autoincrement,name varchar(64),address varchar(64))"; db.execSQL(sql); Log.i(TAG, "333->onCreate end"); } @Override public void onUpgrade(SQLiteDatabase db, int arg1, int arg2) { Log.i(TAG, "444->onUpgrade begin"); String sql = "alter table person add sex varchar(8)"; db.execSQL(sql); Log.i(TAG, "555->onUpgrade end"); } }
四、创建MyTest类,继承AndroidTestCase类,具体代码如下:
package com.bruce.db_test.test; import com.bruce.db_test.db.DbOpenHelper; import android.test.AndroidTestCase; import android.util.Log; public class MyTest extends AndroidTestCase { private String TAG = "MyTest"; public void dbCreate(){ Log.i(TAG, "test begin"); DbOpenHelper helper = new DbOpenHelper(getContext()); helper.getWritableDatabase(); Log.i(TAG, "test end"); } }
五、测试
1.首先测试数据库的创建,先把DbOpenHelper类onUpgrade方法中的四行代码注释掉,变量名version值改为1,然后安装应用到模拟器,可以测试数据库的创建;
当JUnit中显示条为绿色时,表示单元测试成功,这时可以从File Explorer中的data->data->com.bruce.db_test->databases->mydb.db导出数据库到电脑中,用SQLite Expert Professional 工具打开mydb.db查看,如图:
2.测试数据库升级,把DbOpenHelper类onUpgrade方法中注释的代码打开,把version变量的值改为2,如果代码中所示,然后同样点击MyTest中dbCreate方法进行测试,显示测试成功后,在把mydb.db文件重新导出到电脑,用 SQLite可视化工具打开,这时可以看到新添加了一列sex,如图:
当然方式方法还有很多,条条大路通罗马,可以自己多动手试试。