我正在使用 Visual C++ 编写一个小应用程序,该应用程序将调用 SQLite C 接口(interface)来创建数据库并将一些数据插入其中。
在调试应用程序时,我想检查数据库中的数据。因此,我从命令行启动 sqlite3 shell(sqlite3.exe),然后使用以下命令打开数据库:
.open 文件名
此后,我想检查我的应用程序创建的表,但总是得到“表不存在”错误。
然后我使用“select * from sqlite_master;”但仍然返回空结果。
我进行了更多测试,如下所示:
.open --readonly 文件名;
从 sqlite_master 中选择 *;
然后我会看到“数据库被锁定”错误。我尝试在 Stackoverflow 上搜索解决方案,所有解决方案都只是建议关闭正在访问数据库的其他应用程序。但是,我需要的只是让应用程序仍然可以访问数据库,同时我仍然可以查看(而不是修改)sqlite数据库中的内容,这可能吗?
因此,我只是想知道我是否可以通过 sqlite3.exe shell 同时访问已经被另一个程序打开的 sqlite 数据库?
目前只有我的应用会写入数据库,sqlite3 shell只需要读取数据库中的数据。
最佳答案
您好,您可以使用“用于 SQlite 的数据库浏览器”。使用此工具,您可以轻松创建 sqlite 数据库并插入行。您还可以查看插入的数据。
关于sqlite - 同时访问 Sqlite 数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52638283/