安卓中創建數據庫和基本增刪改查
public class SqliteHelper extends SQLiteOpenHelper{
/*** 1.上下文
* 2.數據庫名字
* 3.工廠遊標
* 4.版本號
* @param context
*/
public SqliteHelper(Context context) {
super(context, "Person.db", null, 1);
// TODO Auto-generated constructor stub
}
//創建 創建表 只要創建成功 只會執行一次
@Override
public void onCreate(SQLiteDatabase db) {
// TODO Auto-generated method stub
db.execSQL("create table person(id integer primary key autoincrement," +
"name text," +
"sex text)");
}
//升級數據庫
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
// TODO Auto-generated method stub
}
}
----------------------------------------------------------------------------------------------
以下是簡單的增刪改查:
public class UserDao {
private SqliteHelper helper;
private SQLiteDatabase sb;
public UserDao(Context context){
helper = new SqliteHelper(context);
sb = helper.getReadableDatabase();
}
//添加
public boolean add(String name,String age){
ContentValues values = new ContentValues();
//1.key 字段名 2.要進行添加的值
values.put("name", name);
values.put("age", age);
//1. 表名 2.要進行添加的列 3. 添加的值
long insert = sb.insert("user", null, values );
if(insert!=-1){
return true;
}else{
return false;
}
}
//查詢
public String select(){
/**
* table, 表名
* columns, 查詢列
* selection, 條件
* selectionArgs,條件的值
* groupBy,組查詢
* having, 子查詢
* orderBy 順序 升序 降序
*/
Cursor query = sb.query("user", null, null, null, null, null, null);
StringBuffer stringBuffer = new StringBuffer();
while (query.moveToNext()) {
String name = query.getString(query.getColumnIndex("name"));
String age = query.getString(query.getColumnIndex("age"));
stringBuffer.append(name+"----"+age);
}
return stringBuffer.toString();
}
//刪除
public boolean delete(String name){
/**
* 1.表名
* 2.條件
* 3.條件的值
*/
int delete = sb.delete("user", "name = ?", new String[]{name});
if(delete!=-1){
return true;
}else{
return false;
}
}
public boolean update(String name,String age,String tj){
/**
* table, 表名
* values,要修改的值
* whereClause, 條件
* whereArgs 條件的值
*/
ContentValues values = new ContentValues();
values.put("name", name);
values.put("age", age);
int update = sb.update("user", values, "name = ?", new String[]{tj});
if(update!=-1){
return true;
}else{
return false;
}
}
}