Android(安卓)SQLite数据库
16lz
2021-12-04
参考《Android 开发权威指南》
1 sqlite 工具 sqlite database browser sqlite expert professional sqlite developer sqlitespy 2 SQLiteOpenHelper onCreate(SQLiteDatabase db) // 检查数据库文件 name.db 是否存在,不存在则调用这个方法,一般是创建数据表 onUpgrade(SQLiteDatabase db, int olderVersion, int newVersion) // 比较版本号,不同则调用这个方法,一般是删除老的数据库,新建新的数据库 3 SimpleCursorAdapter 数据库和视图控件绑定 SimpleCursorAdapter(Context context, int layout, Cursor c, String[] from, int[] to); 4 不使用OpenHelper进行数据库操作,这样的方法可以在sdcard中创建数据库文件,一个缺陷是没有线程安全保障和数据库版本管理 SQLiteDatabase db = SQLiteDatabase.openOrCreateDatabase("/sdcrad/name.db", null); db.execSQL("sql"); Cursor c = db.rawQuery("sql", new String[] {}); c.moveToFirst(); // 必须执行moveToFirst 或moveToNext 或 moveToPosition,因为指针在第0条记录之前 5 数据库随apk发布 namedb.db放在raw目录下 InputStream is = getResources().openRawResource(R.raw.namedb); FileOutputStream fos = new FileOutputStream("/sdcard/namedb.db"); byte[] buffer = new byte[8192]; int count = 0; while((count = is.read(buffer) >= 0){ fos.write(buffer,0,count); } fos.close(); is.close(); // 后面的操作和第4条就是一样的了,需要权限 WRITE_EXTERNAL_STORAGE 6 内存数据库 和第4条基本一样不同之处在于 SQLiteDatabase db = SQLiteDatabase.openOrCreateDatabase(null, null);更多相关文章
- Android(安卓)TextView支持的HTML标签
- Android:Parcelable/Bundle/IBinder
- Android操作SQLite数据库基本模式
- Android(安卓)Studio3.3部分断点不生效解决方法
- Android(安卓)Activity之间跳转出现短暂黑屏的处理方法(转)
- Android(安卓)横向选择器(HorizontalPickerView.java)
- Android中的背景音频与MediaSessionCompat
- Android(安卓)广播 使用方法
- Android(安卓)SQLiteOpenHelper