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;
}
@Override
public void onCreate(SQLiteDatabase db) {
// TODO Auto-generated method stub
String sql = "create table if not exists "+TABLE_CHANNEL +
"(_id INTEGER PRIMARY KEY AUTOINCREMENT, " +
ID + " INTEGER , " +
NAME + " TEXT , " +
ORDERID + " INTEGER , " +
SELECTED + " SELECTED)";
db.execSQL(sql);
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
// TODO Auto-generated method stub
onCreate(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包下,更改里面的数据库名称等,有效的管理自己的代码