本章节详细介绍 QT QODBC 数据库编程连接,QT 为数据库编程提供了一个类似 JDBC 的统一操作模型,它的底层是具体数据库或数据库接口的插件,由它们负责完成真正的数据库操作。可进入达梦云适配中心下载试用下载 QT 接口源码。
QT 自带 QODBC Driver,在 Windows 平台上通过系统提供的 ODBC Driver 可以访问支持 ODBC 的数据库,如 Ms Access、SQL Server 等( Windows XP 自带 Access 和 SQL Server 的 ODBC Driver)。开发者通过 QODBC 接口连接 DM 数据库。
请参考数据库环境准备。
下载链接:https://download.qt.io/archive/qt/
请参考 通过 ODBC 连接数据库 章节。
- 首先进入 qt 源码目录中修改 qsqldriverbase.pri 文件,将 include 部分修改为下图所示内容。
- 修改 qt 源码目录中的 odbc.pro 文件,注释 。
- 在/data/Qt5.12.1/5.12.1/gcc_64/bin 下执行。INCLUDEPATH 和 LIBS 的查找方式如下:
会在该目录下生成 Makefile 文件,执行 make 即可生成 libqsqlodbc.so,将此动态库复制到 qt 目录下的 sqldrivers 目录下即可正常使用 qodbc 接口对达梦进行操作。
QODBC 通过 ODBC 接口登录登出示例程序 qt_conn.c 如下:
2、运行示例截图:
- QODBC 通过 ODBC 接口增、删、改、查四个基本操作,示例程序 qt_dml.c 如下:
- 运行示例截图:
- QODBC 通过 ODBC 接口绑定变量示例程序 qt_bind.c 如下:
- 运行示例截图:
- QODBC 通过 ODBC 接口大字段操作包括大字段的插入,查询等。示例程序 qt_lob.c 如下:
- 运行示例截图:
- 首先尽可能使用源码安装的完整版 qt,否则会缺失基础的 libqsqlodbc.so,如果没有安装源码的情况下使用系统自带的 qt,要注意直接下载的源码 src 版本也要和现有 qt 版本一致,否则会出现头文件缺失等问题,该问题是目录结构不匹配导致;
- 保证 odbc 服务名能够正常进行 isql 测试,否则根据 isql -v dsn 来判断具体原因,大部分都是因为环境变量配置错误导致 libdodbc.so 动态库依赖缺失,arm 平台编译安装 unixodbc 注意加上--build=arm-linux;
- 避免系统中安装多版本 qt,会导致环境混乱,libqsqlodbc.so 或者 libqsqldm.so 动态库放入 qt 的 sqldrivers 目录中还是无法识别为可用驱动,driver not loaded,可通过临时 export QT_DEBUG_PLUGINS=1 该窗口下运行程序会打印出具体 qt 的插件 debug 信息,从中看是否从正确的目录搜索到了对应动态库,另外对应动态库是否被识别为 plugins,否则需要去考虑 qt 环境方面问题;
- pro 文件中需要加上 qt+=sql 否则无法识别驱动;
- 尽量使用 root 用户打开 qtcreator,避免其他用户环境变量问题导致无法识别一些依赖组件;
- qt 中 kit 套件、数据库、odbc 位数需要保持一致。
- 示例代码下载:qt_qodbc_code.zip。
- 以上文档内容参考过程中遇到任何问题,可到 达梦技术社区 提问交流。
版权声明:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权、违法违规、事实不符,请将相关资料发送至xkadmin@xkablog.com进行投诉反馈,一经查实,立即处理!
转载请注明出处,原文链接:https://www.xkablog.com/sjkxydsj/16615.html