无法在用 C++ 编写的 UWP 上使用 SQLite 打开数据库
Can't open database using SQLite on an UWP written in C++
我正在制作一个UWP,我需要在其中访问数据库。为此,我首先从以下链接下载并安装了SQL通用Windows平台:
https://sqlite.org/download.html
完成此操作后,我将其添加为参考,并将其包含在我的代码中:
#include <sqlite3.h> //Not sure if I need to make any other changes for this to work
要进行故障排除,我只有一个按钮和一个文本框。这是单击按钮时运行的代码:
int rc;
sqlite3 *testDB;
if (SQLITE_OK == (rc = sqlite3_open("signers.db", &testDB))) {
Message->Text = "It worked!";
}
else {
Message->Text = "Can't open Database";
}
签名者.db这是我使用 SQLite 创建的数据库,因此我可以从我的程序中读取一些数据。每次我运行该程序时,都会出现文本"无法打开数据库"。我已经尝试了我在网上看到的所有解决方案,但似乎没有一个对我有用,因此我认为我监督了一些东西。我对 UWP 和使用数据库相当陌生。
如果您需要任何其他信息,请随时询问。
如果包文件夹中有数据库,则它是只读的。您需要使用sqlite3_open_v2
并传递SQLITE_OPEN_READONLY
标志。
如果要打开数据库进行读/写,则需要先将其复制到本地文件夹。
(还要确保确实设置了要部署的数据库;在"属性"窗口中,确保将其设置为Content
并且将复制到输出目录(。
根据
https://learn.microsoft.com/en-us/windows/uwp/files/file-access-permissions
您对要打开的数据库文件所在的位置有一些限制。 SQLite 本身应该可以工作。尝试在文章中指定的文件夹中打开数据库。
也可能只是一个损坏的数据库文件。您是否尝试创建一个空的?
相关文章:
- 查询SQLite数据库中的日期
- 带内存和隔离功能的SQLite
- 将图像添加到资源文件夹UWP C++
- Qt SQLite没有查询或参数计数不匹配
- Qt SQlite无法创建表
- 如何使用 OpenCV 解码在两个 UWP 应用之间发送的图像字节?
- 尝试从C++访问 UWP 的电子邮件邮件类会导致"REGDB_E_CLASSNOTREG类未注册"错误
- 数数并选择 sqlite 中的前三名
- 如何使用SQLite将数据库中的值导出为C / C++中的字符串或字符?
- 将 dll 文件注入 UWP
- 如何在 Win32 C++控制台应用程序中调用 UWP 类库
- 如何使用SQLite在qt中创建表?
- 使用 cl 构建代码并连接到 sqlite 库
- 连接到 URL Sqlite 数据库C++
- protobuf C++ SQLite handle blob data
- 损坏的结构字符数组 - sqlite C++
- 使用 SQlite 在 QT5 上关闭和打开数据库时出错
- 在SQLITE数据库中写入记录需要花费大量时间.如何提高刀片操作效率?
- 无法在用 C++ 编写的 UWP 上使用 SQLite 打开数据库
- SQLite in 10 UWP App Assertion Error (p->iForeGuard==(int)FOREGUARD);