时间:2021-05-20
本文实例讲述了Android使用Sqlite存储数据的方法。分享给大家供大家参考,具体如下:
一般在开发程序中,经常使用数据的存储功能,如在使用Delphi开发程序时,存储程序的简单设置的INI文件,在C#开发中有时也需要存储简单的设置,个人一般存储在XML中,也在INI中存储过,但是不如XML使用方便,那么这些都是简单的数据存储功能,在Android中也支持这样的文件存储,但是现在这里主要说的还是使用SQLite存储数据,SQLite是一种跨平台的数据库,是单文件式的,如咱们平常见的最多的Access数据库,但是他有比Access更好的平台支持,并且支持分页,现在主要是用于嵌入式的开发。
在开发过程中其实可以直接声明数据库对象来进行存储管理的,代码如下:
SQLiteDatabase sqlitedb; //数据库对象sqlitedb = this.openOrCreateDatabase(datebaseName, MODE_PRIVATE, null);//执行代码:SqlString = " create table " + tableName + " (_id integer primary key,num integer,data text) ";sqlitedb.execSQL(SqlString);这种方式需要我们处理的内容更多一些,个人感觉不是太方便,就像我们开发C#的程序使用SqlHelper一样,在Android平台中也提供了一个类似的类:
SQLiteOpenHelper这样的类
我们可以通过实现这个类来完成我们的操作,这样更简单和高效:
代码如下:
import android.content.Context;import android.database.Cursor;import android.database.sqlite.SQLiteDatabase;import android.database.sqlite.SQLiteOpenHelper;import android.database.sqlite.SQLiteDatabase.CursorFactory;public class DBHelper extends SQLiteOpenHelper { private static final int DB_VERSION = 1; public DBHelper(Context context, String name, CursorFactory factory, int version) { super(context, name, factory, version); // TODO Auto-generated constructor stub } public DBHelper(Context context, String dBName) { super(context, dBName, null, DB_VERSION); } @Override public void onCreate(SQLiteDatabase db) { // TODO Auto-generated method stub } public void onCreate(SQLiteDatabase db, String createDBSql) { // TODO Auto-generated method stub db.execSQL(createDBSql); } @Override public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { // TODO Auto-generated method stub } @Override public void onOpen(SQLiteDatabase db) { // TODO Auto-generated method stub super.onOpen(db); } public void InsertintoDB(SQLiteDatabase db,String sql) { db.execSQL(sql); } public Cursor opendb(SQLiteDatabase db,String sql) { return db.rawQuery(sql, null); }}在这里只做了一个简单的写作,没有写太多方法这个只是一个引导,可以对这个类进行扩展,这样使用起来更方便一些。
下面是一个简单的调用:
//声明SQLiteDatabase db = null;DBHelper dbhelper = null;//实例化dbhelper = new DBHelper(this, "DBName");//方法void CreateTable() { String sql = "Create Table if not exists " + TABLE_NAME + " ( " + ID + " text not null , " + NAME + " text not null );"; dbhelper.onCreate(db, sql); } void InsertDB(String id, String name) { db = dbhelper.getWritableDatabase(); String sql = "insert into " + TABLE_NAME + " (" + ID + "," + NAME + ") values('" + id + "','" + name + "')"; dbhelper.InsertintoDB(db, sql); } void getDB() { db = dbhelper.getReadableDatabase(); String sql = "select * from " + TABLE_NAME; Cursor cursor = dbhelper.opendb(db, sql); String text = ""; while (cursor.moveToNext()) { for (int i = 0; i < cursor.getColumnCount(); i++) { text += cursor.getString(i); } text += "\n"; } Toast.makeText(this, cursor.getCount() + "\n" + text,Toast.LENGTH_LONG).show();}在此只是提供一下简单的参考!欢迎批评指正!
更多关于Android相关内容感兴趣的读者可查看本站专题:《Android操作SQLite数据库技巧总结》、《Android数据库操作技巧总结》、《Android编程之activity操作技巧总结》、《Android文件操作技巧汇总》、《Android编程开发之SD卡操作方法汇总》、《Android开发入门与进阶教程》、《Android资源操作技巧汇总》、《Android视图View技巧总结》及《Android控件用法总结》
希望本文所述对大家Android程序设计有所帮助。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
在android中常用存储数据的基本就三种,sqlite,SharedPreferences,文件存储,其中针对于对象存储,使用sqlite比较多,因为可以对其
一.简介SQLite数据库是一个轻量级的DBMS(数据库管理系统)。SQLite使用单个文件存储数据,Android标准库包含SQLite库以及配套使用的一些J
本文实例讲述了Android数据持久化之SQLite数据库用法。分享给大家供大家参考,具体如下:这一节我将总结一下android中的另一种数据存储——SQLit
本文实例讲述了Android开发之使用SQLite存储数据的方法。分享给大家供大家参考,具体如下:前面已经说到了几种文件的操作如sharedreference,
一、创建索引:在SQLite中,创建索引的SQL语法和其他大多数关系型数据库基本相同,因为这里也仅仅是给出示例用法:复制代码代码如下:sqlite>CREATE