您的位置:首页 > 移动开发 > Android开发

android数据库:增删改查

2016-06-28 10:16 363 查看
1.创建数据库:

public class SqlHlper extends SQLiteOpenHelper {

public static final String TABLE_NAME="user";

public SqlHlper(Context context, String name, CursorFactory factory,
int version) {
super(context, name, factory, version);
// TODO Auto-generated constructor stub
}

public SqlHlper(Context context) {
super(context, "user.db", null, 1);
// TODO Auto-generated constructor stub
}

@Override
public void onCreate(SQLiteDatabase db) {
String sql="create table if not exists "+TABLE_NAME+" ( _id integer primary key autoincrement, user_name text, user_pass text)";
db.execSQL(sql);
}

@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
// TODO Auto-generated method stub

}

}


2.增删改查:

public class DBmanger {
Context context;
private SQLiteDatabase db;

public DBmanger(Context context) {
super();
this.context = context;
SqlHlper helper = new SqlHlper(context);
db = helper.getWritableDatabase();
}

// add方法
public void insert(String name, String pass) {
try {
db.beginTransaction();

ContentValues values = new ContentValues();

values.put("user_name", name);
values.put("user_pass", pass);
db.insert(SqlHlper.TABLE_NAME, null, values);

db.setTransactionSuccessful();
} catch (Exception e) {
// TODO: handle exception
} finally {
db.endTransaction();
}
}

// 查询方法

public List<Users> select(){
List<Users> ls=new ArrayList<Users>();
Cursor cursor = db.query(SqlHlper.TABLE_NAME, null, null, null, null, null, null);
while(cursor.moveToNext()){
Users user=new Users();
user.id=cursor.getInt(cursor.getColumnIndex("_id"));
user.name=cursor.getString(cursor.getColumnIndex("user_name"));
user.pass=cursor.getString(cursor.getColumnIndex("user_pass"));
ls.add(user);
}
return ls;

}

//修改
public List<Users> update(String name){

ContentValues values=new ContentValues();
values.put("user_pass", "88888888");
db.update(SqlHlper.TABLE_NAME, values, "user_name = ?", new String []{name});

return  select();
}

//删除方法
public  List<Users> delete(int id){

db.delete(SqlHlper.TABLE_NAME, "_id = ?", new String []{String.valueOf(id)});
return  select();
}

}


3.到application中注册全局

public static DBmanger db;

@Override

public void onCreate() {

// TODO Auto-generated method stub

super.onCreate();

db = new DBmanger(getApplicationContext());

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  数据库