Android使用SQLite数据库的简单实例

首页 > 软件编程 > Android 更新日期: 2016-04-19
这篇文章主要介绍了Android使用SQLite数据库的简单实例,有需要的朋友可以参考一下

先画个图,了解下Android下数据库操作的简单流程:

Android使用SQLite数据库的简单实例

1.首先,写一个自己的数据库操作帮助类,这个类继承自Android自带的SQLiteOpenHelper.

2.在自己的DAO层借助自己的Helper写数据库操作的一些方法

3.Activity调用DAO层的数据库操作方法进行操作

下面例子是:

1.Helper

代码如下:

package cn.learn.db.util;

import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
import android.database.sqlite.SQLiteDatabase.CursorFactory;

public class DBHelper extends SQLiteOpenHelper {
 private final static String DB_NAME ="test.db";//数据库名
 private final static int VERSION = 1;//版本号
 //自带的构造方法
 public DBHelper(Context context, String name, CursorFactory factory,
   int version) {
  super(context, name, factory, version);
 }
 //为了每次构造时不用传入dbName和版本号,自己得新定义一个构造方法
 public DBHelper(Context cxt){
  this(cxt, DB_NAME, null, VERSION);//调用上面的构造方法
 }
 //版本变更时
 public DBHelper(Context cxt,int version) {
  this(cxt,DB_NAME,null,version);
 }
 //当数据库创建的时候调用
 public void onCreate(SQLiteDatabase db) {
  String sql = "create table student(" +
      "id integer primary key autoincrement," +
      "name varchar(20)," +
      "age int)";
  db.execSQL(sql);
 }
 //版本更新时调用
 public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
  String sql  = "update student ....";//自己的Update操作
  db.execSQL(sql);
 }
}

2.写DAO层

代码如下:

package cn.learn.db.dao;

import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import cn.learn.db.dao.domain.Student;
import cn.learn.db.util.DBHelper;

public class StudentDao {

 DBHelper helper = null;

 public StudentDao(Context cxt) {
  helper = new DBHelper(cxt);
 }

 /**
  * 当Activity中调用此构造方法,传入一个版本号时,系统会在下一次调用数据库时调用Helper中的onUpgrade()方法进行更新
  * @param cxt
  * @param version
  */
 public StudentDao(Context cxt, int version) {
  helper = new DBHelper(cxt, version);
 }

 // 插入操作
 public void insertData(Student stu) {
  String sql = "insert into student (name,age)values(?,?)";
  SQLiteDatabase db = helper.getWritableDatabase();
  db.execSQL(sql, new Object[] { stu.name, stu.age });
 }

 // 其它操作

}

完成这些,其它操作就简单了....

另外,数据库文件放在这个目录

Android使用SQLite数据库的简单实例


> 本站内容系网友提交或本网编辑转载,其目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请及时与本网联系,我们将在第一时间删除内容!

相关文章
  • Android中AnimationDrawable使用的简单实例
    这篇文章介绍了Android中AnimationDrawable使用的简单实例,有需要的朋友可以参考一下首先,可以在drawable文件夹下定义一个xml的文件.如下所示: 代码如下:<animation-list xmlns:andro    android:oneshot="true">    <item andro ...
  • PHP连接局域网MYSQL数据库的简单实例
    这篇文章介绍了PHP连接局域网MYSQL数据库的简单实例,有需要的朋友可以参考一下 代码如下:   $conn=mysql_connect('192.168.0.220','root','123');    if(!$conn) echo "失败!";    else echo "成功!";     // 从表中提取信 ...
  • Android管理与操作Wifi简单实例源码
    这篇文章主要介绍了Android管理与操作Wifi简单实例源码的相关资料,需要的朋友可以参考下因为需要一直在弄网络的问题,今天看了一下Wifi的操作,经过整理,做出来了一个类,可能不全,但是个人感觉已经完全能够满足需要了,当然,里面的方法也有可能是错误的或者是不全的,这个类我没有进行完整的测试,只测试了其中的一些方法. 其实操作Wifi也是很简单的,主要使用 ...
  • android动态壁纸调用的简单实例
    动态壁纸的实现其实就是在Activity中调用动态壁纸服务,通过绑定服务得到IWallpaperService,调用该接口中的attach函数实现壁纸的调用.调用后动态壁纸其实是显示在Activity的后面,而Activity则是透明显示,这样就可以看到下面的动态壁纸,如果Activity不是透明的则什么也看不到. 代码中有用到两个接口 IWallpaper ...
  • Android中ProgressBar用法简单实例
    这篇文章主要介绍了Android中ProgressBar用法,以简单实例形式分析了Android中ProgressBar进度条控件的功能与布局相关技巧,需要的朋友可以参考下本文实例讲述了Android中ProgressBar用法.分享给大家供大家参考,具体如下: 在android中会经常用到ProgressBar,下面通过举例来说明如何使用ProgressB ...
猜你喜欢