SQLiteOpenHelper
android中使用SQLiteOpenHelper这个辅助类时,可以生成一个数据库,并可以对数据库的版本进行管理的方法:
getWriteableDatabase() 创建或打开数据库可以读写、
getReadableDatabase()创建或打开数据库
继承 SQLiteOpenHelper实现:
1.创建一个版本为1的数据库,
2同时创建一个表
3.在数据库版本变化时删除表并重新创建出表
public class DBHelper extends SQLiteOpenHelper { public final static String DATABASENAME = "diaryOpenHelper.db"; public final static int DATABASEVERSION = 1; //创建数据库 public DBHelper(Context context,String name,CursorFactory factory,int version) { super(context, name, factory, version); } //创建表等机构性文件 public void onCreate(SQLiteDatabase db) { String sql ="create table diary"+ "("+ "_id integer primary key autoincrement,"+ "topic varchar(100),"+ "content varchar(1000)"+ ")"; db.execSQL(sql); List<ClassifyFoodType> list = ClassifyFoodTypeManagerDao.findAllClassifyFoodChannel(); for(ClassifyFoodType item : list){ ContentValues values = new ContentValues(); values.put(NEWS_CATEGORY_TBL_CLASSIFYFOODID, item.getClassifyFoodId()); values.put(NEWS_CATEGORY_TBL_CLASSIFYFOODNAME, item.getClassifyFoodName()); values.put(NEWS_CATEGORY_TBL_CLASSIFYFOODTYPE, item.getClassifyFoodType()); db.insert(NEWS_CATEGORY_TBL_GUODOURECIPE, null, values); } } //若数据库版本有更新,则调用此方法 public void onUpgrade(SQLiteDatabase db,int oldVersion,int newVersion) { String sql = "drop table if exists diary"; db.execSQL(sql); this.onCreate(db); } }