AndroID 不自动提供数据库。在 AndroID 应用程序中使用 sqlite,必须自己创建数据库,然后创建表、索引,填充数据。AndroID 提供了 sqliteOpenHelper 帮助你创建一个数据库,你只要继承 sqliteOpenHelper 类,就可以轻松的创建数据库。sqliteOpenHelper 类根据开发应用程序的需要,封装了创建和更新数据库使用的逻辑。sqliteOpenHelper 的子类,至少需要实现三个方法:
构造函数,调用父类 sqliteOpenHelper 的构造函数。这个方法需要四个参数:上下文环境(例如,一个 Activity),数据库名字,一个可选的游标工厂(通常是 Null),一个代表你正在使用的数据库模型版本的整数。 onCreate()方法,它需要一个 sqliteDatabase 对象作为参数,根据需要对这个对象填充表和初始化数据。 onUpgrage() 方法,它需要三个参数,一个 sqliteDatabase 对象,一个旧的版本号和一个新的版本号,这样你就可以清楚如何把一个数据库从旧的模型转变到新的模型。
创建数据库步骤:
继承sqliteOpenHelper 实现onCreate和onUpgrade方法 重新构造器 在onCreate创建SQL语句 执行sql 关闭数据库
DatabaseHelper.java
package com.example.androID_sqlite.database;import androID.content.Context;import androID.database.sqlite.sqliteDatabase;import androID.database.sqlite.sqliteDatabase.CursorFactory;import androID.database.sqlite.sqliteOpenHelper;public class DatabaseHelper extends sqliteOpenHelper { /** * * @param context * :上下文对象 * @param name * :数据库名称 * @param factory * :cursor工厂对象,可以设置null.采用默认的CursorFactory对象 * @param version * :数据库版本号 */ public DatabaseHelper(Context context,String name,CursorFactory factory,int version) { super(context,name,factory,version); } /** * 当数据库第一次创建的时候会调用这个方法 */ @OverrIDe public voID onCreate(sqliteDatabase db) { db.execsql("create table users(userID integer primary key autoincrement,username varchar(20))"); } /** * 当数据库的版本升级的时候,自动调用这个方法(根据数据库的版本号) */ @OverrIDe public voID onUpgrade(sqliteDatabase arg0,int arg1,int arg2) { }}
测试类
package com.example.androID_sqlite.test;import com.example.androID_sqlite.database.DatabaseHelper;import androID.test.AndroIDTestCase;public class DatabaseTese extends AndroIDTestCase { public voID createDatabase() { DatabaseHelper dh = new DatabaseHelper(getContext(),"csdn.db",null,1); dh.getWritableDatabase(); }}
输出结果:
总结
以上是内存溢出为你收集整理的赵雅智_使用sqlite创建数据库全部内容,希望文章能够帮你解决赵雅智_使用sqlite创建数据库所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)