当前位置: 首页 > news >正文

qt6 使用QPSQL

检查可用的数据库驱动:

    // iteator all database driverQStringList drivers = QSqlDatabase::drivers();QStringList::iterator it;for (it = drivers.begin(); it != drivers.end(); ++it){qDebug() << *it;}

qt6 自带pg数据库驱动:

pro文件加个说明:

引用位置添加(按需添加,这里我就大致加一下):

 test code: 理想情况当然是要用pool,这里只是演示调用而已

QSqlError DbTool::testConnection(const QString &driver, const QString &dbName, const QString &host, const QString &user, const QString &passwd, int port)
{// 为每个连接创建一个唯一的标识符static int cCount = 0;// 存储数据库连接的错误信息QSqlError err;// 添加数据库连接并设置连接参数db = QSqlDatabase::addDatabase(driver, QString("myChat%1").arg(++cCount));db.setDatabaseName(dbName);db.setHostName(host);db.setPort(port);// 尝试打开数据库连接if (!db.open(user, passwd)) {// 如果打开失败,获取错误信息并移除数据库连接err = db.lastError();db = QSqlDatabase();QSqlDatabase::removeDatabase(QString("mychat%1").arg(cCount));}else{// QMessageBox::information(0, QObject::tr("Database Information"),//     "Database is connected successfully");qDebug() << "Database is connected successfully";//query table sys_doctorsQSqlQuery query(db);bool b=query.exec("SELECT user_name FROM sys_doctors");if (b){qDebug() << "query success";}else{qDebug() << "query failed";}while (query.next()){QString name = query.value(0).toString();qDebug() << name;}db.close();  }// 返回数据库连接的错误信息(如果有)return err;
}

调用代码:

    QSqlError err = dbtool->testConnection("QPSQL", "myChat", "localhost", "postgres", "1", 5432);if (err.type() != QSqlError::NoError){qDebug() << err.text();}else{qDebug() << "Database is connected successfully";}

http://www.lryc.cn/news/451436.html

相关文章:

  • 【PostgreSQL】提高篇——公用表表达式(CTE)和窗口函数
  • 【min25筛】【CF2020F】Count Leaves
  • 【d57】【sql】1661. 每台机器的进程平均运行时间
  • ArcGIS共享数据的最佳方法(不丢可视化、标注等各类显示信息一样带)
  • 小程序this.getOpenerEventChannel()当前页面与navigateTo页面之间数据通信
  • 调用飞书接口导入供应商bug
  • 《深度学习》OpenCV 角点检测、特征提取SIFT 原理及案例解析
  • golang grpc初体验
  • 基于小程序+Vue + Spring Boot的进销存库存出库入库统计分析管理系统
  • 【数据结构与算法】时间复杂度和空间复杂度例题
  • 停止模式下USART为什么可以唤醒MCU?
  • Web安全 - 路径穿越(Path Traversal)
  • JSR303微服务校验
  • 56. QTreeWidget的基本使用
  • 领域偏移:协变量移位下的域自适应
  • 前端开发技术框架选型
  • /etc/init.d/mysql
  • Qt_线程介绍与使用
  • 通讯方面的数据,人工智能 机器学习的时候,因为数字都接近于一,数据归一化的一种方法,做了一个简化版本的Z-score标准化
  • python itertools模块介绍
  • 【分布式微服务云原生】5分钟深入剖析Kafka:Leader与Follower分区的秘密及负载均衡的艺术
  • 在线代码编辑器
  • 深入了解 MPlayer:Linux 系统中的多功能多媒体播放器
  • Netty系列-7 Netty编解码器
  • OpenHarmony标准系统上实现对rk系列芯片NPU的支持(npu使用)
  • 大表性能优化的关键技术
  • 广联达 Linkworks办公OA Service.asmx接口存在信息泄露漏洞
  • 如何成为成功的AI产品经理:经验与策略分享
  • spring loCDI 详解
  • 遇到 Docker 镜像拉取失败的问题时该如何解决