Qt与Sqlite3

操作流程: 

(1)与数据库连接

(2)进行增删改查操作

(3)关闭数据库

示例:

参考:Qt 操作SQLite数据库_qt sqlite数据库操作_houxian1103的博客-CSDN博客 

再谈QSqlQuery::exec: database not open问题的解决_qt database not open-CSDN博客

    if (QSqlDatabase::contains("connection"))
    {
        database = QSqlDatabase::database("connection");
    }
    else {
        database = QSqlDatabase::addDatabase("QSQLITE","connection");
        database.setDatabaseName("identifier.sqlite");
    }
    if (!database.open())
    {
        qDebug() << "Error: Failed to connect database." << database.lastError();
    }
    else {
        QSqlQuery query(database);
        query.exec("select * from kmd_menu");
        if (!query.exec())
        {
            qDebug() << "Error:" << query.lastError();
        }
        else {
            while (query.next())
            {
                qDebug() << query.value("name").toString();
            }
        }
        database.close();
    }

 QSqlDatabase类学习笔记_qsqldatabase::adddatabase-CSDN博客

思考:

QSqlDatabase类对象表示一个数据库的连接

Qt中的数据库以连接名来区分

    QSqlDatabase b = QSqlDatabase::addDatabase("QSQLITE");
    qDebug() << b.connectionName();

结果:"qt_sql_default_connection"

注释:这个程序是有问题的,最后没有removeDatabase(连接名)。

猜你喜欢

转载自blog.csdn.net/weixin_51883798/article/details/134799320
今日推荐