Название: Qt 3.3.3 и Oracle Отправлено: Volrath от Сентябрь 11, 2007, 00:55 Всем здарсте, короче возникла проблема с ораклом, перечитал тут все топики, но не наёшёл то, что у меня происходит.
Короче стоит оракл 9i и Qt 3.3.3 Драйвер я скомпилилил нормально, все либы в /sqldrivers/oci появились Дальше пишу стандартные строчки, которые в доках по Кюти есть: QSqlDatabase *db = QSqlDatabase::addDatabase("QOCI8"); db->setHostName("192.168.3.3"); db->setDatabaseName("mydb1"); db->setUserName("root"); db->setPassword("mypassword"); Это всё проскакивает нормально и без ошибок, но дальше начинается приколы: if (!db->open()) // в этой строчке. когда просто запускаешь проект, всё нормально (используется VC++ 6.0), но если поставить на это место брейкпоинт, то дебаггер шлёт по адресу в памяти, что-то типа 0х709... ну и т.д. { QMessageBox::critical(parent, QObject::tr("Database Error"); db->lastError().text()); return false; } QSqlQuery query; query.exec("SELECT id, name, salary FROM empl WHERE salary>=1000"); // соответсвенно SQL-запрос не выполняется. Судя по всему экжемпляр класса QSqlDatabase создаётся нормально, в него даже параметры правильно записываеются, т.к. если ввести неправильный пассворд, то if прокатывает и выдаётся сообщение об ошибке. А при правильном вводе база почему-то не открывается. причём компилятор это хватает, только если пройтись дебагером... Короче не могу понять, может кто разъяснит. Название: Re: Qt 3.3.3 и Oracle Отправлено: Admin от Сентябрь 11, 2007, 06:15 я бы начал с простых вещей
типа 1) Стоит оракл. Выставленны ли переменные ORACLE_HOME и ORACLE_SID. 2) Обычно к ораклу конектятся через строку TNS. А не через IP напрямую. 3) скачать otl.sf.net либу и попробовать ей сам я оракл не использовал в qt - но кажется тут проблема именно с ораклом. |