• Qt5.7中使用MySQL Driver


    Qt5.7中使用MySQL Driver

    1、使用环境

    Qt5.7的安装安装就已经带了MySQL Driver,只需要在安装的时候选择一下即可。
    如果没有安装,可以采取自己编译的方式。
    在Qt的源码包的qtbasesrcsqldriversmysql路径下,就是相关的源码文件。
    这里就不说编译方式了。只是要记得在编译的时候,需要libmysql的支持。

    2、基本使用

        QSqlError err;
        // 数据库对象创建
        QSqlDatabase db = QSqlDatabase::addDatabase("MYSQL","连接名");
        // 设置相关参数
        db.setDatabaseName("数据库名");    // 需要与数据库中的一致
        db.setHostName("127.0.0.1");    // 主机名(地址)
        db.setPort(3366);        // 端口
    
        // 打开数据库
        if (!db.open("用户名", "密码")) {
            err = db.lastError();
            db = QSqlDatabase();
            QSqlDatabase::removeDatabase("连接名");
        }
        // Query对象创建
        QSqlQuery q("", db);
        // 创建一个表
        q.exec("create table Names (id integer primary key, Firstname varchar, Lastname varchar, City varchar)");
        // 插入三条数据
        q.exec("insert into Names values (1, 'Christopher', 'Walker', 'Morristown')");
        q.exec("insert into Names values (2, 'Donald', 'Duck', 'Andeby')");
        q.exec("insert into Names values (3, 'Buck', 'Rogers', 'Paris')");
    

    3、一个小问题

    QSqlDatabase: QMYSQL driver not loaded
    QSqlDatabase: available drivers: QSQLITE QMYSQL QMYSQL3 QODBC QODBC3 QPSQL QPSQL7
    

    这里需要把libmysql.dll文件拷贝到Qtbin目录中。或者自己编译的时候,链接静态库。

  • 相关阅读:
    【Rollo的Python之路】Python 编码与解码
    【Rollo的Python之路】Python 队列 学习笔记 queue
    【Rollo的Python之路】Python 同步条件 学习笔记 Event
    【Rollo的Python之路】Python 条件变量同步 学习笔记 Condition
    【Rollo的Python之路】Python 信号量 学习笔记 Semaphore
    十天冲刺-09
    十天冲刺-08
    十天冲刺-07
    十天冲刺-06
    十天冲刺-05
  • 原文地址:https://www.cnblogs.com/oloroso/p/5766068.html
Copyright © 2020-2023  润新知