Android中的SQLite使用

SQLite使用在Android的数据存储中占据重要的位置,那么如何将数据存储到数据库中呢?步骤如下:

1. SQLiteOpenHelper

public class SQLiteHelper extends SQLiteOpenHelper{

	public SQLiteHelper(Context context) {
		super(context, "person.db", null, 1);
	}
	@Override
	public void onCreate(SQLiteDatabase db) {
		db.execSQL("create table secret (id integer primary key autoincrement,name varchar(20),password varchar(20),phone varchar(20))");
	}
	@Override
	public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
		
	}
}

2.使用步骤1中新建的类以及SQLiteDatabase类进行增删改查

public class PersonInfo {
	private SQLiteHelper helper;
	public UserDao(Context context) {
		helper = new SQLiteHelper(context);
	}
	public void insert(User psw) {
		SQLiteDatabase db = helper.getWritableDatabase();
		ContentValues values = new ContentValues();
		values.put("name", psw.getName());
		values.put("password", psw.getPassword());
		values.put("phone", psw.getPhone());
		db.insert("secret", null, values);
		db.close();
	}
	public void delete(String name) {
		SQLiteDatabase db = helper.getWritableDatabase();
		db.delete("secret", "name=?", new String[] { name });
		db.close();
	}
	public int update(User password) {
		SQLiteDatabase db = helper.getWritableDatabase();
		ContentValues values = new ContentValues();
		values.put("name", password.getName());
		values.put("password", password.getPassword());
		values.put("phone", password.getPhone());
		int count = db.update("secret", values, "name=?",
				new String[] { password.getName() });
		db.close();
		return count;
	}
	public List<User> queryAll() {
		SQLiteDatabase db = helper.getReadableDatabase();
		Cursor c = db.query("secret", new String[] { "name", "password",
				"phone" }, null, null, null, null, null);
		List<User> list = new ArrayList<User>();
		while (c.moveToNext()) {
			String name = c.getString(c.getColumnIndex("name"));
			String psw = c.getString(c.getColumnIndex("password"));
			String phone = c.getString(c.getColumnIndex("phone"));
			User password = new User(name, psw, phone);
			list.add(password);
		}
		c.close();
		db.close();
		return list;
	}
	public String findData(String name, String data) {
		String phone = "";
		SQLiteDatabase db = helper.getReadableDatabase();
		Cursor c = db.query("secret", null, "name=?", new String[] { name },
				null, null, null);
		while (c.moveToNext()) {
			phone = c.getString(c.getColumnIndex(data));
		}
		c.close();
		db.close();
		return phone;
	}
	public void deleteAll() {
		SQLiteDatabase db = helper.getWritableDatabase();
		String sql = "DELETE FROM secret;";
		db.execSQL(sql);
		db.close();
	}
}

猜你喜欢

转载自blog.csdn.net/synola/article/details/79996184
今日推荐