Important: Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

QSqlDatabase::drivers() do not output same in debug and release



  • Qt Version : 5.1.1 VS 2010, downloaded from qt-project
    I compiled the oci driver by myself. After that, I check the sqldrivers dir:
    2013/08/26 02:58 620,032 qsqlite.dll
    2013/08/26 02:58 880,640 qsqlited.dll
    2013/08/26 02:58 2,305,024 qsqlited.pdb
    2013/11/12 12:50 47,104 qsqlmysql.dll
    2013/11/12 12:50 2,024 qsqlmysql.lib
    2013/11/12 13:10 1,227 qsqlmysql.prl
    2013/11/12 12:50 112,128 qsqlmysqld.dll
    2013/11/12 12:50 2,040 qsqlmysqld.lib
    2013/11/12 12:50 1,166,336 qsqlmysqld.pdb
    2013/11/12 13:10 1,200 qsqlmysqld.prl
    2013/11/12 12:50 76,800 qsqloci.dll
    2013/11/12 11:26 311,532 qsqloci.lib
    2013/11/12 11:26 1,130 qsqloci.prl
    2013/11/12 12:50 151,552 qsqlocid.dll
    2013/11/12 11:26 602,318 qsqlocid.lib
    2013/11/12 12:50 1,141,760 qsqlocid.pdb
    2013/11/12 11:26 1,103 qsqlocid.prl
    2013/08/26 02:58 66,048 qsqlodbc.dll
    2013/08/26 02:58 138,240 qsqlodbcd.dll
    2013/08/26 02:58 1,149,952 qsqlodbcd.pdb
    2013/08/26 02:58 53,248 qsqlpsql.dll
    2013/08/26 02:58 104,448 qsqlpsqld.dll
    2013/08/26 02:58 1,035,264 qsqlpsqld.pdb

    and I write a sample app:
    QStringList ar = QSqlDatabase::drivers();
    for(int i = 0, nCount = ar.size(); i < nCount; ++ i)
    {
    qDebug() << ar.at(i);
    }

    in debug:

    "QSQLITE"
    "QMYSQL"
    "QMYSQL3"
    "QODBC"
    "QODBC3"
    "QPSQL"
    "QPSQL7"

    in release:
    "QSQLITE"
    "QMYSQL"
    "QMYSQL3"
    "QOCI"
    "QOCI8"
    "QODBC"
    "QODBC3"
    "QPSQL"
    "QPSQL7"

    The problem is that QOCI is not found in debug version. Why?
    Thanks in advance.


Log in to reply