Как сделать базу данных Sqlite только для чтения?

У меня есть база данных sqlite, которую я хочу, чтобы она была доступна только для чтения, когда она используется другим приложением графического интерфейса, так что пользователь не может редактировать данные, только приложение Qt может редактировать их.

Вот мой код:

//open the database
QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE");
    db.setDatabaseName(database location);

    if(db.open())
        qDebug ()<<"opened!";
    else
        qDebug ()<<"not opened!";

//insert data
QSqlQuery qry;

qry.prepare("insert into tableName (column_1, column_2, column_3) values (:v1, :v2, :v3)");

    qry.bindValue(":v1", "data1");
    qry.bindValue(":v2", "data2");
    qry.bindValue(":v3", "data3");

    qry.exec();

1 ответ

Зашифруйте свою базу данных, чтобы только ваше приложение могло получить к ней доступ. Предоставьте в вашем приложении функцию экспорта, которая записывает незашифрованную версию БД только для просмотра.

Другие вопросы по тегам