2014-10-27Android学习------SQLite数据库操作(三)-----数据库模块

来源:互联网 发布:网络彩票赌博被骗 编辑:程序博客网 时间:2024/06/07 11:33

1.创建类

import android.content.Context;import android.database.sqlite.SQLiteDatabase;import android.database.sqlite.SQLiteDatabase.CursorFactory;import android.database.sqlite.SQLiteOpenHelper;public class SQLHelper extends SQLiteOpenHelper {public static final String DB_NAME = null;// 数据库名称public static final int VERSION = 1;public static final String TABLE_CHANNEL ="channel";//数据表 public static final String ID = "id";//public static final String NAME = "name";public static final String ORDERID = "orderId";public static final String SELECTED = "selected";private Context context;public SQLHelper(Context context) {super(context, DB_NAME, null, VERSION);this.context = context;// TODO Auto-generated constructor stub}public Context getContext() {return context;}@Overridepublic void onCreate(SQLiteDatabase db) {// TODO Auto-generated method stubString sql = "create table if not exists "+TABLE_CHANNEL +"(_id INTEGER PRIMARY KEY AUTOINCREMENT, " +ID + " INTEGER , " +NAME + " TEXT , " +ORDERID + " INTEGER , " +SELECTED + " SELECTED)";db.execSQL(sql);}@Overridepublic void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {// TODO Auto-generated method stubonCreate(db);}}


2.管理类

import android.content.ContentValues;import android.content.Context;import android.database.Cursor;import android.database.sqlite.SQLiteDatabase;public class DBUtil {private static DBUtil mInstance;// 单一模式private Context mContext;private SQLHelper mSQLHelp;private SQLiteDatabase mSQLiteDatabase;public DBUtil(Context context) {mContext = context;mSQLHelp = new SQLHelper(context);mSQLiteDatabase = mSQLHelp.getWritableDatabase();}/** * 初始化数据库操作DBUtil类 * 单一模式 */public static DBUtil getInstance(Context context) {if (mInstance == null) {mInstance = new DBUtil(context);}return mInstance;}/** * 关闭数据库 */public void close() {mSQLHelp.close();mSQLHelp = null;mSQLiteDatabase.close();mSQLiteDatabase = null;mInstance = null;}/** * 添加数据 */public void insertData(ContentValues values) {mSQLiteDatabase.insert(SQLHelper.TABLE_CHANNEL, null, values);}/** * 更新数据 *  * @param values * @param whereClause * @param whereArgs */public void updateData(ContentValues values, String whereClause,String[] whereArgs) {mSQLiteDatabase.update(SQLHelper.TABLE_CHANNEL, values, whereClause,whereArgs);}/** * 删除数据 *  * @param whereClause * @param whereArgs */public void deleteData(String whereClause, String[] whereArgs) {mSQLiteDatabase.delete(SQLHelper.TABLE_CHANNEL, whereClause, whereArgs);}/** * 查询数据 *  * @param columns * @param selection * @param selectionArgs * @param groupBy * @param having * @param orderBy * @return */public Cursor selectData(String[] columns, String selection,String[] selectionArgs, String groupBy, String having,String orderBy) {Cursor cursor = mSQLiteDatabase.query(SQLHelper.TABLE_CHANNEL,columns, selection, selectionArgs, groupBy, having, orderBy);return cursor;}}

以后需要数据库的时候把这两个类放到一个com.xx.xx.db包下,更改里面的数据库名称等,有效的管理自己的代码

0 0
原创粉丝点击