1.安装数据库
安装到 C:\oracle
2.打开 oracle 驱动编译项目
这要求在安装程序时,选择安装 src 源文件,项目路径如下:
C:\Qt\Qt5.9.0\5.9\Src\qtbase\src\plugins\sqldrivers\oci
双击 oci.pro 打开项目即可
3.修改项目配置文件
原始配置文件 oci.pro
TARGET = qsqloci
HEADERS += $$PWD/qsql_oci_p.h
SOURCES += $$PWD/qsql_oci.cpp $$PWD/main.cpp
QMAKE_USE += oci
darwin:QMAKE_LFLAGS += -Wl,-flat_namespace,-U,_environ
OTHER_FILES += oci.json
PLUGIN_CLASS_NAME = QOCIDriverPlugin
include(../qsqldriverbase.pri)
修改后配置文件
TARGET = qsqloci
HEADERS += $$PWD/qsql_oci_p.h
SOURCES += $$PWD/qsql_oci.cpp $$PWD/main.cpp
#这行注释掉
#QMAKE_USE += oci
darwin:QMAKE_LFLAGS += -Wl,-flat_namespace,-U,_environ
OTHER_FILES += oci.json
PLUGIN_CLASS_NAME = QOCIDriverPlugin
include(../qsqldriverbase.pri)
#oracle的安装路径去找(引入 oracle 头文件)
INCLUDEPATH += C:\oracle\product\10.2.0\db_1\oci\include
#oracle的安装路径去找(引入 oracle 库文件)
INCLUDEPATH += C:\oracle\product\10.2.0\db_1\lib\msvc\oci.lib
4.清理项目,编译
注意:一定要先清理项目,否则编译仍然会报错!
(1)构建\清理项目“oci”
(2)编译项目,编译后的文件位置在:C:\plugins\sqldrivers
文件夹中,将所有文件拷贝到:C:\Qt\Qt5.9.0\5.9\mingw53_32\plugins\sqldrivers 目录下即可
5.测试
//连接数据库
QSqlDatabase db = QSqlDatabase::addDatabase("QOCI");
db.setPort(1521);
db.setHostName("ip");
db.setDatabaseName("dbname");
db.setUserName("username");
db.setPassword("pwd");
if (db.open()) {
qDebug()<< "RIGHT";
}else{
qDebug()<< "ERROR";
return 0;
}