2010.2.1

PersonHelper
package com.huawei.demo.db;

import java.util.List;

public class PersonHelper extends SQLiteOpenHelper {

	private static final String TABLE_NAME = "person";
	private static final int VERSION = 1;
	private static final String TAG = "PersonHelper";
	
	private static final String CREATE_PERSON_TABLE = "CREATE TABLE PERSON(ID INTEGER PRIMARY KEY AUTOINCREMENT,"
		+ "NAME VARCHAR(50), PHONE VARCHAR(20))";
	private static final String DROP_TABLE_PERSON = "DROP TABLE IF EXISTS PERSON";
	
	public PersonHelper(Context context ) {
		super(context, TABLE_NAME, null, VERSION);
		// TODO Auto-generated constructor stub
	}

	@Override
	public void onCreate(SQLiteDatabase db) {
		db.execSQL(CREATE_PERSON_TABLE);

	}

	@Override
	public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
		db.execSQL(DROP_TABLE_PERSON);
		onCreate(db);
	}

	public long addPerson(Person person) {
		Log.d(TAG, "====> addPerson");
		SQLiteDatabase db = getWritableDatabase();
		ContentValues contentValues = new ContentValues();
		contentValues.put("name", person.getName());
		contentValues.put("phone", person.getPhoneNumber());
		
		long result = db.insert(TABLE_NAME, null, contentValues);
		db.close();
		return result;

	}
	public void deletePerson(String id) {
		SQLiteDatabase db = getWritableDatabase();
		db.delete(TABLE_NAME, "id=?", new String[] { id });
	}
	public Cursor selectAllPerson() {
		SQLiteDatabase db = getReadableDatabase();
		return db.query(TABLE_NAME, new String[] { "id", "name", "phone" },
				null, null, null, null, "id desc");
	}
	public int updatePerson(Person person) {
		SQLiteDatabase db = getWritableDatabase();
		ContentValues contentValues = new ContentValues();
		contentValues.put("name", person.getName());
		contentValues.put("phone", person.getPhoneNumber());
		return db.update(TABLE_NAME, contentValues, "id=?",
				new String[] { person.getId() });
	}
	public Person findPersonByNumber(String inNumber) {
		Person person = null;
		SQLiteDatabase db = getReadableDatabase();
		Cursor cur = db.query(TABLE_NAME,
				new String[] { "id", "name", "phone" }, "phone=?",
				new String[] { inNumber }, null, null, null);
		while (cur.moveToNext()) {
			person = new Person(cur.getString(cur.getColumnIndex("ID")),
					cur.getString(cur.getColumnIndex("NAME")),
					cur.getString(cur.getColumnIndex("PHONE")));
			break;
		}
		cur.close();
		db.close();
		return person;
	}
	public void savePersons(List<Person> pers) {
		SQLiteDatabase db = getWritableDatabase();
		for (Person p : pers) {
			ContentValues contentValues = new ContentValues();
			contentValues.put("name", p.getName());
			contentValues.put("phone", p.getPhoneNumber());
			db.insert(TABLE_NAME, null, contentValues);
		}
		db.close();
	}
}

你可能感兴趣的:(2010.2.1)