sqlite数据库
发布时间:2020-12-12 23:47:08 所属栏目:百科 来源:网络整理
导读:使用sqlite首先创建一个类继承SQLiteOpenHelper用于创建数据库、表等等 package com.zte;import android.content.Context;import android.database.sqlite.SQLiteDatabase;import android.database.sqlite.SQLiteOpenHelper;/** * @version 2012-7-11 下午03:
使用sqlite首先创建一个类继承SQLiteOpenHelper用于创建数据库、表等等
package com.zte; import android.content.Context; import android.database.sqlite.SQLiteDatabase; import android.database.sqlite.SQLiteOpenHelper; /** * @version 2012-7-11 下午03:36:38 **/ public class DatabaseHelper extends SQLiteOpenHelper { public static String DB_NAME = "dbname"; public static int DB_VERSION = 1; public static String DB_TABLE = "dbtable"; public static String KEY_ID = "_id";//使用SimpleCursorAdapter主键列 必须为_id public static String KEY_NAME = "name"; // 创建一个数据库 public DatabaseHelper(Context context) { // 在使用getWritableDatabase()或getREadableDatabase()时调用 super(context,DB_NAME,null,DB_VERSION); } // 创建表 @Override public void onCreate(SQLiteDatabase db) { // 数据库没有表时调用 db.execSQL("create table " + DB_TABLE + " (" + KEY_ID + " integer primary key," + KEY_NAME + " text)"); } @Override public void onUpgrade(SQLiteDatabase db,int oldVersion,int newVersion) { // 升级数据库 } }创建一个类用户执行各种增删查改方法 package com.zte; import android.content.ContentValues; import android.content.Context; import android.database.Cursor; import android.database.sqlite.SQLiteDatabase; /** * @version 2012-7-11 下午04:06:39 **/ public class DatabaseAdapter { private DatabaseHelper databaseHelper = null; // 构造函数 public DatabaseAdapter(Context c) { databaseHelper = new DatabaseHelper(c); } // 关闭 public void close() { databaseHelper.close(); } // 插入数据 返回行ID如果出错则为-1 public long inster(String name) { // 获得数据库写的对象 SQLiteDatabase db = databaseHelper.getWritableDatabase(); ContentValues cv = new ContentValues(); // 放入值 cv.put(DatabaseHelper.KEY_NAME,name); return db.insert(DatabaseHelper.DB_TABLE,DatabaseHelper.KEY_ID,cv);//第二个参数为字段名,可以为null } // 修改 返回收影响行数 public int update(int id,String value) { SQLiteDatabase db = databaseHelper.getWritableDatabase(); ContentValues cv = new ContentValues(); cv.put(DatabaseHelper.KEY_NAME,value); return db.update(DatabaseHelper.DB_TABLE,cv,DatabaseHelper.KEY_ID + "=?",new String[] { Integer.toString(id) }); } // 删除 返回收影响行数 public int delete(int id) { SQLiteDatabase db = databaseHelper.getWritableDatabase(); return db.delete(DatabaseHelper.DB_TABLE,"id=?",new String[] { Integer.toString(id) }); } // query(String table,String[] columns,String selection,String[] // selectionArgs,String groupBy,String having,String orderBy) // table 表名 // columns 列(可以使用聚合函数) // selection 条件 // selectionArgs 值 // groupBy 分组 // having 条件 // orderBy 排序 public Cursor query(int id) { SQLiteDatabase db = databaseHelper.getReadableDatabase(); Cursor cursor = db.query(DatabaseHelper.DB_TABLE,new String[] { DatabaseHelper.KEY_ID,DatabaseHelper.KEY_NAME },DatabaseHelper.KEY_ID + "=?",new String[] { Integer.toString(id) },null); if(cursor != null) cursor.moveToFirst(); return cursor; } // 查询所有 public Cursor query() { SQLiteDatabase db = databaseHelper.getReadableDatabase(); Cursor cursor = db.query(DatabaseHelper.DB_TABLE,null); if(cursor != null) cursor.moveToFirst(); return cursor; } // 用户执行SQL语句 public void execsql() { SQLiteDatabase db = databaseHelper.getWritableDatabase(); db.execSQL(""); } }在Activity 中每次调用方法后必须关闭 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |