zoukankan      html  css  js  c++  java
  • android 构建数据库SQLite

      1.首先我们需要一个空白的eclipse android工程

      

      2.然后修改AndroidManifest.xml

      在<application></application>标签里面加入一句<uses-library android:name="android.test.runner"/>用于添加单元测试

      在<application></application>标签里面加入<instrumentation android:name="android.test.InstrumentationTestRunner"           android:targetPackage="com.example.android_SQLite"></instrumentation>

      具体可参考http://www.cnblogs.com/feisky/archive/2010/07/23/1783826.html

      3.在src中新建一个类DbSQLiteHelper用于构建SQLite数据库

      

     1 package com.example.android_sqlite;
     2 
     3 import android.database.sqlite.SQLiteDatabase;
     4 import android.database.sqlite.SQLiteOpenHelper;
     5 
     6 public class DbSQLiteHelper extends SQLiteOpenHelper {
     7 
     8     @Override
     9     public void onCreate(SQLiteDatabase arg0) {
    10         // TODO Auto-generated method stub
    11 
    12     }
    13 
    14     @Override
    15     public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
    16         // TODO Auto-generated method stub
    17 
    18     }
    19 
    20 }

      创建好了以后发现eclipse中报错,Must define an explicit constructor。我们需要写一个构造函数。

      

    1     private static String NAME = "mydb";
    2     private static int VERSION = 1;
    3 
    4     public DbSQLiteHelper(Context context) {
    5         // context 上下文 name数据库的名称 version数据库版本号
    6         // 原型是super(context, name, factory, version);
    7         // TODO Auto-generated constructor stub
    8         super(context, NAME, null, VERSION);
    9     }

      4.DbSQLiteHelper的onCreate中编写sql语句来创建数据库

      

    1 public void onCreate(SQLiteDatabase arg0) {
    2         // TODO Auto-generated method stub
    3         String sql = "create table person(id integer primary key autoincrement,name varchar(20),address varchar(20))";
    4         arg0.execSQL(sql);
    5     }

      5.新建一个Test类,必须继承AndroidTestCase

     1 package com.example.android_db.test;
     2 
     3 import com.example.android_db.db.DbSQLiteHelper;
     4 
     5 import android.test.AndroidTestCase;
     6 
     7 public class Test extends AndroidTestCase {
     8     
     9     public Test() {
    10         // TODO Auto-generated constructor stub
    11     }
    12     public void createDB(){
    13         DbSQLiteHelper dbSQLiteHelper = new DbSQLiteHelper(getContext());
    14         dbSQLiteHelper.getReadableDatabase();
    15         
    16     }
    17 
    18 }

      6.然后选择方法createDB()右键选中Android JUit Test

      

      测试成功

      

      

  • 相关阅读:
    洛谷P1352没有上司的舞会+树形二维DP
    高精度模板(从洛谷题解中骗来的
    Codeforces#398 &767C. Garland 树形求子节点的和
    LuoGu-P1122 最大子树和+树形dp入门
    HDU-3549Flow Problem 最大流模板题
    Codeforces Round #486 (Div. 3)988E. Divisibility by 25技巧暴力||更暴力的分类
    Codeforces Round #486 (Div. 3)988D. Points and Powers of Two
    数据结构&字符串:01字典树
    数据结构:可持久化平衡树
    数据结构:并查集-拆点
  • 原文地址:https://www.cnblogs.com/FrenziedBug/p/3352503.html
Copyright © 2011-2022 走看看