StoreConfig.Builder builder = new StoreConfig.Builder();
String str ="123";
builder.setName("newStore.db")//设置数据库名字
.setReadOnly(false)//设置数据库的只读属性 可读可写 false
.setDatabaseFileType(DatabaseFileType.NORMAL)//设置数据库文件类型NORMAL 正常, BACKUP,备份 CORRUPT;损坏
.setJournalMode(StoreConfig.JournalMode.MODE_WAL)//设置数据库的日志模式MODE_DELETE MODE_TRUNCATE, MODE_PERSIST, MODE_MEMORY, MODE_WAL, MODE_OFF;
// DELETE:日志模式,一般在事务开始时创建回滚日志,事务结束时删除回滚日志。
// TRUNCATE:截取模式 日志太长了就...一般不用
// PERSIST:事务结束时不删除回滚日志,而是在日志文件头部覆写0,
// 这样也可以达到删除文件同样的效果,却减少了反复创建删除回滚日志的磁盘开销。
// MEMORY:将回滚日志存储在内存而不是磁盘中,但因为在磁盘中没有用于恢复的文件,
// 如果在事务中间发生崩溃或者掉电,那么整个数据库就有可能损坏。
// OFF:禁用SQLite原子提交和回滚功能。
// WAL:预写日志,支持多个并发读取和一个并发写入。
// 该模式下,提交事务时,保持xxx.db文件不变,而将事务追加到同一目录下的xxx.db-wal文件中。
// 上下文save:时,wal不会被删除,直到达到几兆之后,
// Core Data 会自动执行一个“检查点操作“,用于同步wal文件和主存文件xxx.db,同时,wal文件会被删除。
// shm——共享内存文件
// 共享内存文件用于提供一块共享内存给多个进程在WAL模式中访问相同的数据库。
.setStorageMode(StoreConfig.StorageMode.MODE_DISK)//设置数据库的存储模式 MODE_MEMORY 内存模式,MODE_DISK;磁盘模式
.setSyncMode(StoreConfig.SyncMode.MODE_OFF)//设置数据库的同步模式 有 MODE_OFF,不同步MODE_NORMAL,正常同步 MODE_FULL, 完全同步,MODE_EXTRA,额外同步
.setEncryptKey(str.getBytes())
.setDatabaseFileSecurityLevel(DatabaseFileSecurityLevel.S0); //设置数据库文件的安全级别S4 支付 财务 健康,S3 运动信息 位置信息 用户生成数据,S2 联系方式 网络地址,S1 一般个人信息 应用配置 网络状态, S0 设备型号 厂家 尺寸 版本, NO_LEVEL 没啥级别 啥啥都行;
鸿蒙HarmonyOS 关系型数据库 配置说明
最新推荐文章于 2024-06-05 16:59:18 发布