недостаточно памяти. Ошибка при открытии базы данных. sqlite3 и комплект UWP в Qt - PullRequest
0 голосов
/ 24 июня 2018

Я сделал очень простую программу, чтобы открыть базу данных sqlite3 и создать в ней пример таблицы.Я написал этот код:

#include "mainwindow.h"
#include "ui_mainwindow.h"

#include <QSqlDatabase>
#include <QSqlTableModel>
#include <QSqlQuery>
#include <QSqlError>
#include <QMessageBox>
#include <QStandardPaths>
#include <QFile>

MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);

QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE");
QFile file(QStandardPaths::displayName(QStandardPaths::AppDataLocation) + "/library.db");

if(file.open(QFile::ReadWrite))
    QMessageBox::information(this, "", "Successfully created database");

db.setDatabaseName(file.fileName());
db.setHostName("Test");

if(db.open())
{
    QSqlQuery query;

    if(!query.exec("create table if not exists test(name text not null)"))
        QMessageBox::critical(this, "Oops!", "Unable to create table: " + query.lastError().text());
}
else
    QMessageBox::critical(this, "Oops!", "Unable to open database: " + db.lastError().text());
}

MainWindow::~MainWindow()
{
    delete ui;
}

Я тестировал код в режиме отладки (комплект dektop), и он работал.Затем я попробовал режим отладки в 32-битном наборе универсальной платформы Windows (64-битная тоже не работает).Но на этот раз, хотя код компилируется нормально и приложение также развернуто, база данных не создается.И это показывает ошибку: «недостаточно памяти. Ошибка открытия базы данных».Я что-то упускаю из UWP?

Я проверил папку сборки проекта, и база данных NO была создана.

Я использую 64-битные окна 10

...