关于一个app中数据库的问题
如果是不同名字的数据库,可以有多个数据库操作dao
如果是同样名字的数据库,只能有一个数据库操作dao,创建表的语句可以写在一个oncreate方法里面
例如
public class AddressOpenHelper extends SQLiteOpenHelper { public AddressOpenHelper(Context context) { super(context, "Address.db", null, 1); } public void onCreate(SQLiteDatabase db) { db.execSQL("create table addressinfo (id integer primary key,name varchar(100),phonenumber varchar(100),fixedtel varchar(100),provinceid varchar(20),cityid varchar(50),areaid varchar(50),areadetail varchar(200),zipcode varchar(50))"); } }
public class FavoriteDbOpenHelper extends SQLiteOpenHelper { public FavoriteDbOpenHelper(Context context) { super(context, "Redbaby.db", null, 1); } public void onCreate(SQLiteDatabase db) { db.execSQL("create table favorite (id integer primary key,marketprice integer,name varchar(100),pic varchar(100),price integer)"); } }
上面是两个不同的数据库,可以有不同的数据库操作dao类
public class MyOpenHelper extends SQLiteOpenHelper { public OrderDetailOpenHelper(Context context) { super(context, "Redbaby.db", null, 1); } public void onCreate(SQLiteDatabase db) { db.execSQL("create table favorite (id integer primary key,marketprice integer,name varchar(100),pic varchar(100),price integer)"); db.execSQL("create table addressinfo (id integer primary key,name varchar(100),phonenumber varchar(100),fixedtel varchar(100),provinceid varchar(20),cityid varchar(50),areaid varchar(50),areadetail varchar(200),zipcode varchar(50))"); }}
上面是同一个数据库有不同的表,必须在一个数据库类里面的oncreate方法里面 创建两个不同名字的表,只能有一个数据库操作dao类