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

【Qt】Windows下Qt连接DM数据库

环境信息:W11 Qt5.12及以上 dm8
QODBC达梦

Windows环境创建ODBC数据源

使用 ODBC 方法访问 DM 数据库服务器之前,必须先配置 ODBC 数据源

  1. 在控制面板Windows工具中显示ODBC数据源管理器
    数据源
    ODBC
  • ODBC数据源管理器标签
    • 用户 DSN:添加、删除或配置本机上的数据源,它们只可由当前用户使用。
    • 系统 DSN:添加、删除或配置本机上的数据源,它们可由任何用户使用。
    • 文件 DSN:添加、删除或配置在分离文件中的数据源。这些文件可以被安装了同样数据库驱动器的用户共享。
    • 驱动程序:列出了安装在客户机上的数据库驱动器。
    • 跟踪:用于测试你的数据库应用程序。它跟踪客户机和数据库服务器之间的 ODBC API 的调用。
    • 连接池:允许不同的应用程序自动复用多个连接。这有助于限制和数据库服务器的通信过载。
    • 关于:显示主要 ODBC 组件的版本。
  1. 设置和配置一个系统 DSN,单击系统 或用户DSN 标签,单击添加按钮增加一个新的 DSN
    创建新的数据源
  2. 选择 DM ODBC DRIVER 驱动程序,单击【完成】按钮,显示 DM ODBC DRIVER数据源配置对话框
    在这里插入图片描述

通过QODBC连接DM数据库

  1. 使用增加 ODBC 用户数据源
    在这里插入图片描述
  2. 测试代码
#include <QCoreApplication>
#include <QtSql>
#include <QDebug>
#include <QSqlDatabase>int main(int argc, char *argv[])
{QCoreApplication a(argc, argv);QSqlDatabase database= QSqlDatabase::addDatabase("QODBC");database.setHostName("127.0.0.1");database.setPort(5236);database.setDatabaseName("DM");// 与添加的用户DSN用户名保持一致database.setUserName("SYSDBA");database.setPassword("SYSDBA");if (database.open())qDebug() << "connect ok!";else{qDebug() << "connect fail! " << database.lastError().text().toLatin1();}return a.exec();
}

如果 ODBC 数据源是 32 位,构建项目需要使用 32位 构建套件编译,如果 ODBC 数据源是 64 位,构建项目则需要使用 64 位构建套件编译,因当前数据源为 64 位,因此使用 64 位构建套件编译 。使用时需要添加core和sql。
在这里插入图片描述

  • 查询
...QSqlQuery* sqlQuery = new QSqlQuery(database);if (!sqlQuery->exec("SELECT * FROM 模式名.表名")){QSqlError error = sqlQuery->lastError();QMessageBox::warning(NULL, error.driverText(), error.text());}else{while (sqlQuery->next()){int id = sqlQuery->value("id").toInt();QString Name = sqlQuery->value("weapon").toString();}}
...
http://www.lryc.cn/news/469883.html

相关文章:

  • 2024 你还不会微前端吗 (上) — 从巨石应用到微应用
  • WPF+MVVM案例实战(三)- 动态数字卡片效果实现
  • #网络安全#渗透测试# 渗透测试应用
  • MicroServer Gen8再玩 OCP万兆光口+IT直通之二
  • 【JAVA面试题】Java和C++主要区别有哪些?各有哪些优缺点?
  • 保姆级教程!!教你通过【Pycharm远程】连接服务器运行项目代码
  • JMeter详细介绍和相关概念
  • 如何使用Git
  • Redis 哨兵 问题
  • 安卓基础001
  • shodan2:绕过shodan高级会员限制+metasploit批量验证漏洞
  • 【JAVA毕业设计】基于Vue和SpringBoot的母婴商城系统
  • 探索Python安全字符串处理的奥秘:MarkupSafe库揭秘
  • Xcode真机运行正常,打包报错
  • Android Audio基础——音频混音线程介绍(十)
  • 【Excel】函数各类公式总结
  • 【入门篇】2.9 系统滴答定时器 SysTick
  • BiRefNet:颠覆图像分割,AI黑科技再升级
  • 编写一个简单的Iinput_dev框架
  • ctfshow的sql注入解题思路171-211
  • 深入理解C语言中的静态库与动态库 —— 原理与实践
  • 本地缓存库分析(一):golang-lru
  • qt配置https请求
  • C语言进阶——文件操作
  • MYSQL-查看用户权限语法(二十一)
  • 在MySQL中存储IP地址的最佳实践
  • Vite打包配置
  • node集成redis (教学)
  • 江协科技STM32学习- P22 实验-ADC单通道/ADC多通道
  • RL学习笔记-马尔可夫过程