Qt Commercial版只自带了SQLLite和ODBC的驱动,oracle的驱动要自己编译,折腾了许久,终于成功了。具体如下:
编译QOCI:
1st:
go to Qt’s Command Prompt window. (VS 2008下)
2nd:
set INCLUDE=%INCLUDE%;D:\oracle\product\10.2.0\client_1\oci\include
3rd:
set LIB=%LIB%;D:\oracle\product\10.2.0\client_1\oci\lib\msvc
4th:
cd %QTDIR%/src/plugins/sqldrivers/oci
5th:
qmake -o Makefile oci.pro
6th:
nmake
输出当前qt的数据库驱动代码
qDebug() << "Available drivers:";
QStringList drivers = QSqlDatabase::drivers();
foreach(QString driver, drivers)
qDebug() << "\t" << driver;
QSqlDatabase db = QSqlDatabase::addDatabase("QOCI");
qDebug() << "QOCI driver valid?" << db.isValid();