用下面的代码建立连接之后,出现了几个问题
//连接数据库 QSqlDatabase db = QSqlDatabase::addDatabase("QOCI"); /**连接Oracle数据库 *数据库名:abc *表名:my_oracle *用户名:sys *密码:123 *端口号:(默认)1521 */ db.setPort(1521); db.setHostName("localhost"); db.setDatabaseName("abc"); db.setUserName("sys"); db.setPassword("123"); if (!db.open()) { //链接数据库失败"; db.lastError().text(); return false; }
将db.lastError().text();的内容输出到label中后显示如下问题:1.出现提示:driver not loaded解决方法:将Qt安装目录C:\Qt\Qt5.2.0\5.2.0\Src\qtbase\plugins下的文件夹sqldrivers复制到自己的工程文件build-linkOracle-Desktop_Qt_5_2_0_MinGW_32bit-Debug\debug目录下。
文件夹sqldrivers里面有四个文件:libqsqloci.a, libqsqlocid.a, qsqloci.dll,qsqlocid.dll2.出现提示:ORA-28009:应当以 SYSDBA 身份或SYSOPER 身份建立 SYS 连 Unable to logon解决方法:新建一个用户,用新的用户建立连接,连接成功。(成功原因不清楚)

本文介绍使用Qt连接Oracle数据库时遇到的问题及其解决方案,包括缺少驱动和权限问题,并提供了具体的解决步骤。

911

被折叠的 条评论
为什么被折叠?



