欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

Qt远程连接Oracle数据库

程序员文章站 2022-06-03 19:39:03
...

一:代码 /**连接Oracle数据库 *数据库名:abc *表名:my_oracle *用户名:system *密码:123 *端口号:(默认)

一:代码

二:连接过程遇到的问题。

问题1:

QSqlDatabase: QOCI driver not loaded

QSqlDatabase:available drivers: QSQLITE QODBC3 QODBC
(1)出错原因:本连接是通过QMYSQL驱动,而Qt本身并没有QOCI驱动(只有QSQLITE QODBC3 QODBC),

所以就需要自己编译QOCI。

(2)编译QOCI驱动。

1.go to "Qt Command Prompt" window. (开始-程序-对应的qt项里面去找)。

2.qmake "INCLUDEPATH+=c:\oracle\oci\include" "LIBS+=-Lc:\oracle\oci\lib\msvc" oci.pro

3.qmake "INCLUDEPATH+=D:\oracle_setup\app\admin\product\11.1.0\db_3\OCI\include" "LIBS+=-LD:\oracle_setup\app\admin\product\11.1.0\db_3\OCI\lib\msvc" oci.pro

4.mingw32-make

问题2:

出现错误:

D:\qt_sdk\qt\src\plugins\sqldrivers\oci>mingw32-make
mingw32-make -f Makefile.Debug all
mingw32-make[1]: Entering directory `D:/qt_sdk/qt/src/plugins/sqldrivers/oci'
mingw32-make[1]: Nothing to be done for `all'.
mingw32-make[1]: Leaving directory `D:/qt_sdk/qt/src/plugins/sqldrivers/oci'
mingw32-make -f Makefile.Release all
mingw32-make[1]: Entering directory `D:/qt_sdk/qt/src/plugins/sqldrivers/oci'
mingw32-make[1]: Nothing to be done for `all'.
mingw32-make[1]: Leaving directory `D:/qt_sdk/qt/src/plugins/sqldrivers/oci'

出错原因:这个问题表示QOCI驱动已经被编译过了!

Qt远程连接Oracle数据库