Sqlite工具类
来源:互联网 发布:娱乐圈爆料知乎天涯 编辑:程序博客网 时间:2024/06/10 20:31
- package com.asc.db;
-
- import android.content.ContentValues;
- import android.content.Context;
- import android.database.Cursor;
- import android.database.sqlite.SQLiteDatabase;
- import android.database.sqlite.SQLiteOpenHelper;
-
-
-
-
-
-
-
- public class DBManager {
-
- private static final String DB_NAME = "asc.db";
-
-
- private static final int DB_VERSION = 1;
-
-
- private SQLiteDatabase mSQLiteDatabase = null;
-
-
- private DatabaseHelper mDatabaseHelper = null;
-
-
- private Context mContext = null;
-
- private static DBManager dbConn= null;
-
-
- private Cursor cursor;
-
-
-
-
- private static class DatabaseHelper extends SQLiteOpenHelper {
-
- DatabaseHelper(Context context) {
-
- super(context, DB_NAME, null, DB_VERSION);
- }
-
- @Override
- public void onCreate(SQLiteDatabase db) {
- db.execSQL("CREATE TABLE ad_record(id PRIMARY KEY NOT NULL, adUrl TEXT, apMac TEXT, createDate DATETIME);");
- }
-
- @Override
- public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
- db.execSQL("DROP TABLE IF EXISTS ad_record");
- onCreate(db);
- }
- }
-
-
-
-
-
-
- private DBManager(Context mContext) {
- super();
- this.mContext = mContext;
- }
-
- public static DBManager getInstance(Context mContext){
- if (null == dbConn) {
- dbConn = new DBManager(mContext);
- }
- return dbConn;
- }
-
-
-
-
- public void open() {
- mDatabaseHelper = new DatabaseHelper(mContext);
- mSQLiteDatabase = mDatabaseHelper.getWritableDatabase();
- }
-
-
-
-
- public void close() {
- if (null != mDatabaseHelper) {
- mDatabaseHelper.close();
- }
- if (null != cursor) {
- cursor.close();
- }
- }
-
-
-
-
-
-
-
-
-
- public long insert(String tableName, String nullColumn,
- ContentValues contentValues) throws Exception {
- try {
- return mSQLiteDatabase.insert(tableName, nullColumn, contentValues);
- } catch (Exception e) {
- throw e;
- }
- }
-
-
-
-
-
-
-
-
-
- public long delete(String tableName, String key, int id) throws Exception {
- try {
- return mSQLiteDatabase.delete(tableName, key + " = " + id, null);
- } catch (Exception e) {
- throw e;
- }
- }
-
-
-
-
-
-
-
-
- public Cursor findAll(String tableName, String [] columns) throws Exception{
- try {
- cursor = mSQLiteDatabase.query(tableName, columns, null, null, null, null, null);
- cursor.moveToFirst();
- return cursor;
- } catch (Exception e) {
- throw e;
- }
- }
-
-
-
-
-
-
-
-
-
-
- public Cursor findById(String tableName, String key, int id, String [] columns) throws Exception {
- try {
- return mSQLiteDatabase.query(tableName, columns, key + " = " + id, null, null, null, null);
- } catch (Exception e) {
- throw e;
- }
- }
-
-
-
-
-
-
-
-
-
-
-
-
- public Cursor find(String tableName, String [] names, String [] values, String [] columns, String orderColumn, String limit) throws Exception{
- try {
- StringBuffer selection = new StringBuffer();
- for (int i = 0; i < names.length; i++) {
- selection.append(names[i]);
- selection.append(" = ?");
- if (i != names.length - 1) {
- selection.append(",");
- }
- }
- cursor = mSQLiteDatabase.query(true, tableName, columns, selection.toString(), values, null, null, orderColumn, limit);
- cursor.moveToFirst();
- return cursor;
- } catch (Exception e) {
- throw e;
- }
- }
-
-
-
-
-
-
-
-
-
-
- public boolean udpate(String tableName, String [] names, String [] values, ContentValues args) throws Exception{
- try {
- StringBuffer selection = new StringBuffer();
- for (int i = 0; i < names.length; i++) {
- selection.append(names[i]);
- selection.append(" = ?");
- if (i != names.length - 1) {
- selection.append(",");
- }
- }
- return mSQLiteDatabase.update(tableName, args, selection.toString(), values) > 0;
- } catch (Exception e) {
- throw e;
- }
- }
-
-
-
-
-
-
- public void executeSql(String sql) {
- mSQLiteDatabase.execSQL(sql);
- }
-
- } //原文: http://forhope.iteye.com/blog/1461412