问题标签 [sqlite-journal-mode]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - 无法在 Android 上的 SQLite 中更改日志模式
我正在使用 Android 6.0 和 SQLite 3.8.10.2 我在更改数据库连接的日志模式时遇到问题。
首先我检查journal_mode
并且值是'PERSIST'然后我journal_mode=DELETE
再次设置并检查,但xx
变量的值仍然是PERSIST。我需要更改 journal_mode,因为我必须在多个设备之间同步 db。
谢谢
android - clearAllTables 不起作用
Android Room 有方法 void clearAllTables()
,根据文档,它做了以下内容:
从注册到此数据库的所有表中删除所有行
entities()
。这不会重置由
autoGenerate()
.删除行后,Room 将设置 WAL 检查点并运行 VACUUM。这意味着数据被完全擦除。如果数量超过数据库文件大小的阈值,系统将回收空间。
我在我的项目中检查了它,看起来 db 在那次调用之后没有数据,但是当我从我的设备中提取 *.db 文件并在sqlite查看器中打开它时,我看到所有数据都存在,表格被填满,什么也没有已被删除。这个怎么可能?我认为这是我的应用程序中的一个潜在缺陷。请提供可靠的洁净室数据库方法
android - Android:使用房间创建的 SQLite 数据库在使用 sqlte-browser 打开时不显示表
我正在使用Room Persistence Library 1.1.0。/data/data/<package_name>/databases/
我可以使用 Android Studio 的设备文件资源管理器找到数据库文件。
room-DAO
它包含多个表,我可以使用s毫无问题地访问这些表的内容。但是,使用 , 打开时sqlite-browser
,不显示任何表格。
可能是什么原因?是否可以在不从房间切换回旧房间的情况下解决问题SQLiteOpenHelper
?
database - 单个作家的最佳日记模式
我将 sqlite3 用于日志记录功能。如果我不需要任何并发性(一直只有一个作家),但我需要快速插入,我应该选择哪种日志模式?
objective-c - 核心数据禁用 journal_mode 不起作用
我想在我的核心数据应用程序中禁用日志模式。这是代码:
我也验证了这个:
NSLog 的结果是:
但是当我重新启动我的应用程序时,我总是在应用程序目录中找到所有三个文件 My_App.sqlite、My_App.sqlite-shm 和 My_App.sqlite-wal。
为什么它不起作用?
flutter - Flutter:SQFLite 数据库未在应用程序中显示数据
在我的 Android 应用程序中,我需要添加大约 300 个客户。由于应用程序具有可用的数据库import/export
功能,因此我决定在计算机上而不是移动设备上插入客户。
我是这样做的:
- 在手机上安装应用程序
- 使用导出
db
功能导出 - 使用 SQLite 编辑器工具插入数据
- 保存了数据库
- 在手机上转移并导入回来
从逻辑上讲,它应该工作,但它不工作。
导出/导入功能:
此功能确实按预期工作,我已经这样测试过:
- 添加了一些虚拟数据
- SD卡上的导出数据
- 删除应用程序
- 重新安装(虚拟数据不可用)
- 导入数据回来,它工作
我注意到:
导出的数据库 zip 文件包含一个与数据库同名但带有附加词的文件,例如
DBNAME.db-journal
. 当我db
使用 SQLite 编辑器添加数据并保存时。该-journal
文件已被删除。由于应用程序不会在应用程序中显示添加的数据,但是如果我们
db
从应用程序导出并在编辑器中打开它,那么它会显示所有数据。
我什至尝试-journal
在导入之前删除以前的文件,但没有运气。
android - 备份时的Android 9数据库日志模式WAL问题
我的应用程序中有一些备份/恢复功能,在使用 >= Android 9 时会导致问题,SQLite 数据库确实使用 journal_mode WAL 而不是他们在旧手机上使用的 DELETE。我的 SQLLite 版本是 3.25.2
更多信息:
我正在使用完全集成到我的项目中的 Sugar ORM。Sugar ORM 使用自己的类,例如,扩展 SQLiteOpenHelper 的 SugarDb,并且该类是只读的。
问题:
- 如何以及在哪里检查 *.db 文件的 journal_mode 是否为 WAL?
- SQLite journal_mode 为 WAL 时如何正确复制/恢复 *.db 文件?
- 对于所有手持设备,如何以及在何处将 SQLite journal_mode 从 WAL 切换到 DELETE?
sqlite - 使用 TCL 在 SQLite 上更改 journal_mode
我想升级我的插入速度,并阅读了有关修改日志模式的信息。我怎样才能在 TCL 代码上做到这一点?谢谢!