我创建了一个SQLite以及操作这个数据库的类,代码如下
这是数据库的类
public class account extends SQLiteOpenHelper {
private static final int VERSION = 1;// 定义数据库版本号
private static final String DBNAME = "account.db";// 定义数据库名
public account(Context context){// 定义构造函数
super(context, DBNAME, null, VERSION);// 重写基类的构造函数
}
@Override
public void onCreate(SQLiteDatabase db){// 创建数据库
db.execSQL("create table tb_pname(id INTEGER PRIMARY KEY AUTOINCREMENT,packageName varchar(20))");// 创建表,表的一列为packageName,一列为主键id,id的值可递增
//db.execSQL("create table tb_pwd (password varchar(20))");//创建密码表
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion)// 覆写基类的onUpgrade方法,以便数据库版本更新
{
}
}
这是操作数据库的类
public class PwdDAO {
private account helper;// 创建DBOpenHelper对象
private SQLiteDatabase db;// 创建SQLiteDatabase对象
private static final String USER_TABLE="tb_pname";
public PwdDAO(Context context)// 定义构造函数
{
helper = new account(context);// 初始化account对象
db=helper.getWritableDatabase();//获得操作数据库的对象
}
public account getHelper(){
return helper;
}
我在mainActivity中创建了数据库的实例,并获得操作对象的代码如下
pwdDAO=new PwdDAO(this);//首先创建数据库
helper=pwdDAO.getHelper();
SQLiteDatabase db=helper.getWritableDatabase();
那么问题来了,我想要在另一个 activity中也获得这个数据库的操作对象,应该怎样做,如果再执行如同上面的语句,岂不是又创建了一个数据库,这个问题应该怎样解决
求解,各位大神