[android] android下创建一个sqlite数据库

[android] android下创建一个sqlite数据库,第1张

概述Sqlite数据库是开源的c语言写的数据库,android和iphone都使用的这个,首先需要创建数据库,然后创建表和字段,android提供了一个api叫SQLiteOpenHelper数据库的打开

sqlite数据库是开源的c语言写的数据库,androIDiphone都使用的这个,首先需要创建数据库,然后创建表和字段,androID提供了一个APIsqliteOpenHelper数据库的打开和创建类。

 

具体使用比如:创建一个classPersonsqliteOpenHelper用户数据库类,继承sqliteOpenHelper,父类是个抽象类要实现onCreate()onUpgrate()方法,此时会报错要求创建构造方法,构造方法的参数:Context上下文作用是告诉程序数据库创建在哪个目录下,String name数据库文件的名字,factory游标工厂一般我们都写null系统默认的,version数据库的版本从1开始,构造方法完成数据库就可以被创建。

 

OnCreate(sqliteDatabase db)方法是数据库第一次被创建时回掉,用来创建表以及初始化参数,参数就是我们创建的数据库。调用sqliteDatabase对象的execsql()方法执行sql语句,首先要创建表和MysqL的基本一样,执行这条sql语句,create table person (ID integer primary key autoincrement,name  varchar(20) not null default “” ) varchar的数字实际没有意义,给程序员看的,超过了也无所谓。

 

new出来helper对象的时候,数据库并不会被创建,只有当helper对象调用了getWritableDatabase()方法或者getReadableDatabase()时候才会被创建。使用测试用例来测试一下,但是helper类需要上下文对象,测试框架提供了一个方法叫getContext()来得到上下文对象,数据库文件的地址/data/data/包名/database/下面,是私有的权限

helper代码:

 

package com.tsh.database;import androID.content.Context; androID.database.sqlite.sqliteDatabase; androID.database.sqlite.sqliteOpenHelper;public class PersonsqliteOpenHelper extends sqliteOpenHelper {    /**     * 构造方法     * @param context     */    public PersonsqliteOpenHelper(Context context) {        super(context,"person.db",null,1);    }         * 数据库第一次创建完成的回调     */    @OverrIDe    voID onCreate(sqliteDatabase db) {        String sql="create table person (ID integer primary key autoincrement,name varchar(10) not null default '')";        db.execsql(sql);    }    @OverrIDe    voID onUpgrade(sqliteDatabase db,1)">int oldVersion,1)">int newVersion) {        // Todo auto-generated method stub    }}

 

测试用例:

 com.tsh.database.test; com.tsh.database.PersonsqliteOpenHelper; androID.test.AndroIDTestCase;class TestPersonDb  AndroIDTestCase {    voID testPerson() throws Exception{        PersonsqliteOpenHelper helper =new PersonsqliteOpenHelper(getContext());        helper.getWritableDatabase();    }}

 

总结

以上是内存溢出为你收集整理的[android] android下创建一个sqlite数据库全部内容,希望文章能够帮你解决[android] android下创建一个sqlite数据库所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1121106.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-29
下一篇 2022-05-29

发表评论

登录后才能评论

评论列表(0条)

保存