public class DatabaseHelper extends SQLiteOpenHelper {
privatestatic final String name = "itcast";//数据库名称
private static final int version = 1; //数据库版本
......略
}
public class HelloActivity extends Activity {
@Override public void onCreate(Bundle savedInstanceState) {
......
Button button=(Button) this.findViewById(R.id.button);
button.setOnClickListener(new View.OnClickListener(){
publicvoid onClick(View v) {
DatabaseHelperdatabaseHelper = new DatabaseHelper(HelloActivity.this);
SQLiteDatabase db = databaseHelper.getWritableDatabase();
db.execSQL("insert into person(name, age)values(?,?)", new Object[]{"传智播客",4});
db.close();
}});
}
}
第一次调用getWritableDatabase()或getReadableDatabase()方法后,SQLiteOpenHelper会缓存当前的SQLiteDatabase实例,SQLiteDatabase实例正常情况下会维持数据库的打开状态,所以在你不再需要SQLiteDatabase实例时,请及时调用close()方法释放资源。一旦SQLiteDatabase实例被缓存,多次调用getWritableDatabase()或getReadableDatabase()方法得到的都是同一实例。