假设我已经用工具建好了一个SQLite数据库为:Books.db,里面有一个表叫:book。
那我如果要在程序中将book表中的数据读取出来,该怎样写这函数?
是继承SQLiteOpenHelper类然后在里面进行操作吗?可以该怎样写呢?
那个建好的数据库文件放在应用的包的哪里?是新建一个叫databases的文件夹,然后把数据库文件放进去吗?
哪位高手可以指教一下吗?
/** * 主要用以对数据库进行相关数据的查询 * @author Aboo * */ public class LibraryBookDatabaseHelper extends SQLiteOpenHelper { /** * 保存的数据库文件名 */ public static final String DB_NAME = "Books.db"; /** * 包名 */ public static final String PACKAGE_NAME = "com.aboo.library"; /** * 存放数据库路径 */ public static final String DB_PATH = "/data" + Environment.getDataDirectory().getAbsolutePath() + "/" + PACKAGE_NAME+"/databases"; public LibraryBookDatabaseHelper(Context context, String name, CursorFactory factory, int version) { super(context, name, factory, version); // TODO Auto-generated constructor stub } @Override public void onCreate(SQLiteDatabase db) { // TODO 创建数据库后,对数据库的操作 } @Override public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { // TODO 更改数据库版本的操作 } @Override public void onOpen(SQLiteDatabase db) { // TODO 每次成功打开数据库后首先被执行 super.onOpen(db); SQLiteDatabase.openOrCreateDatabase(DB_PATH, null); } }
可以放在asserts下面,
private final static String DATABASE_PATH = android.os.Environment .getExternalStorageDirectory().getAbsolutePath() + "/database"; private static String DATABASE_FILENAME = "Books.db";String databaseFilename = DATABASE_PATH + "/" + DATABASE_FILENAME;db = SQLiteDatabase.openOrCreateDatabase(databaseFilename, null); 大概的思路应该是这样子吧。新建文件前,自己先加一些判断,看是否存在文件,不存在就new个出来
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。