Russian Qt Forum

Qt => Базы данных => Тема начата: vinnipux от Март 05, 2008, 13:14



Название: приложение с Oracle и клиент
Отправлено: vinnipux от Март 05, 2008, 13:14
Такой вот вопрос написал, программулину которая обращается к Oracle она замечательно работает на моей машине и на любой другой где стоит оракловский клиент, и пишет что не может найти драйвер на машинах где нет Оракловского клиента.
Вместе с прогой копирую библиотеки QtSql4.dll,qsqloci.dll в папке sqldrivers.
1. Вопрос, такой объязательно нужно ставить клиент Oracle или как-то можно обойти. Если как то опишите.
2. Если всетаки без клиента не как нельзя, то может ктонибудь указать на облегченный клиент, ну что бы не весь дистрибутив оракала таскать с собой.
3. Если использовать OTL, клиент нужен или нет? И если у кого есть ссылка на описание данной библиотеки на русском языке будьте добры выложите.

ЗЫ. По форумум искал однозначного ответа на данные вопросы не нашел


Название: Re: приложение с Oracle и клиент
Отправлено: Barmaglodd от Март 11, 2008, 16:15
OTL тоже использует клиент оракла.Можно, конечно, из клиента выдрать oci.dll и обвязку, но вот позволяет ли такое лицензия оракла, я не знаю. А вообще есть специально Oracle Instant Clent, вроде как раз для вашего случая http://www.oracle.com/technology/tech/oci/instantclient/index.html (http://www.oracle.com/technology/tech/oci/instantclient/index.html).


Название: Re: приложение с Oracle и клиент
Отправлено: vinnipux от Март 13, 2008, 09:40
Решил поробывать использовать библиотеку OTL. Скачал файл с otlv4.h http://otl.sourceforge.net (http://otl.sourceforge.net), в MSVC2005 С++ прописал пусть к библиотечным файлам oci (клиент Oracle). при компиляции программы возникает следующая ошибка:
Цитировать
1>main.obj : error LNK2019: unresolved external symbol _OCIDescriptorFree referenced in function "public: virtual __thiscall otl_var::~otl_var(void)" (??1otl_var@@UAE@XZ)
1>otl.obj : error LNK2001: unresolved external symbol _OCIDescriptorFree
1>moc_otl.obj : error LNK2001: unresolved external symbol _OCIDescriptorFree
1>main.obj : error LNK2019: unresolved external symbol _OCIHandleFree referenced in function "public: virtual __thiscall otl_var::~otl_var(void)" (??1otl_var@@UAE@XZ)
1>otl.obj : error LNK2001: unresolved external symbol _OCIHandleFree
1>moc_otl.obj : error LNK2001: unresolved external symbol _OCIHandleFree
1>D:\users\Nikolay\Programming\qt\qtOTL\otl\Debug\otl.exe : fatal error LNK1120: 2 unresolved externals
1>Build log was saved at "file://d:\users\Nikolay\Programming\qt\qtOTL\otl\otl\Debug\BuildLog.htm"
1>otl - 7 error(s), 3 warning(s)

посмотрел по форуму, найти по данной теме нечего не удалось.


Название: Re: приложение с Oracle и клиент
Отправлено: nanit от Март 16, 2008, 13:02
Используя OTL, требуется дополнительно подключить библиотеку oci.lib. И клиент тебе понадобится обязательно, без него никак. Самый простой вариант, как было предложено выше, использовать Oracle Instant Client.


Название: Re: приложение с Oracle и клиент
Отправлено: vinnipux от Март 17, 2008, 09:47
Используя OTL, требуется дополнительно подключить библиотеку oci.lib. И клиент тебе понадобится обязательно, без него никак. Самый простой вариант, как было предложено выше, использовать Oracle Instant Client.
1.прошу прощения за безграмотность, подскажите как подключить библиотеку oci.lib.
2. Oracle Instant Client - окромя как от сюдова http://www.oracle.com/technology/tech/oci/instantclient/index.html (http://www.oracle.com/technology/tech/oci/instantclient/index.html), больше негде нельзя скачать?


Название: Re: приложение с Oracle и клиент
Отправлено: nanit от Март 17, 2008, 16:43
1. либо через Project -> "<имя_проекта> Properties" -> Configuration Properties -> Linker -> Input -> Строка Additional Dependencies (если всё равно будет матюгаться, то пропиши полный путь в Linker -> General -> "Additional Library Directories"), либо прямо в файле строкой #pragma comment(lib, "oci.lib") (опять же, не забудь про путь)
2. можно конечно поискать, но есть ли смысл? официальный сайт в конце концов.



Название: Re: приложение с Oracle и клиент
Отправлено: vinnipux от Март 18, 2008, 06:39
1. либо через Project -> "<имя_проекта> Properties" -> Configuration Properties -> Linker -> Input -> Строка Additional Dependencies (если всё равно будет матюгаться, то пропиши полный путь в Linker -> General -> "Additional Library Directories"), либо прямо в файле строкой #pragma comment(lib, "oci.lib") (опять же, не забудь про путь)
2. можно конечно поискать, но есть ли смысл? официальный сайт в конце концов.
1. спасибо попробую.
2. ну там он какой-то пароль просит :) при попытке скачать.