赵雅智_使用sqlite创建数据库

前端之家收集整理的这篇文章主要介绍了赵雅智_使用sqlite创建数据库前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

Android 不自动提供数据库。在 Android 应用程序中使用 sqlite,必须自己创建数据库,然后创建表、索引,填充数据。Android 提供了 sqliteOpenHelper 帮助你创建一个数据库,你只要继承 sqliteOpenHelper 类,就可以轻松的创建数据库sqliteOpenHelper 类根据开发应用程序的需要,封装了创建和更新数据库使用的逻辑。sqliteOpenHelper 的子类,至少需要实现三个方法

  • 构造函数调用父类 sqliteOpenHelper 的构造函数。这个方法需要四个参数:上下文环境(例如,一个 Activity),数据库名字,一个可选的游标工厂(通常是 Null),一个代表你正在使用的数据库模型版本的整数。
  • onCreate()方法,它需要一个 sqliteDatabase 对象作为参数,根据需要对这个对象填充表和初始化数据。
  • onUpgrage() 方法,它需要三个参数,一个 sqliteDatabase 对象,一个旧的版本号和一个新的版本号,这样你就可以清楚如何把一个数据库从旧的模型转变到新的模型。

创建数据库步骤:

  1. 继承sqliteOpenHelper
  2. 实现onCreate和onUpgrade方法
  3. 重新构造器
  4. 在onCreate创建sql语句
  5. 执行sql
  6. 关闭数据库


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();
	}
}

输出结果:

原文链接:https://www.f2er.com/sqlite/200495.html

猜你在找的Sqlite相关文章