Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Oracle > ODBC драйвер для Oracle


Автор: Chow 24.3.2005, 10:30
Многие наверное знают, что доступ к СУБД Оракл возможен и без установленого клиента оного на компьютере пользователя - т.е. "напрямую".
(По такому принципу работают пакеты компонент ODAC, DOA, Zeos, NCOCI и т.д.)
Вот меня заинтересовал вопрос:
Возможно ли (и если да, то существуют ли уже готовые) создание ODBC-драйвера для Оракла по такому принципу - т.е. не требующие установленого клиента?


Автор: LSD 24.3.2005, 22:45
Возможно. Готовых примеров не знаю.
А зачем это нужно? Для нормальной работы там нужно пару dll (sqora32.dll, oci.dll и зависимые dll), парочка ключей в реестре и tsnames.ora.

Автор: Chow 25.3.2005, 09:26
Цитата(LSD @ 24.3.2005, 22:45)
Для нормальной работы там нужно пару dll (sqora32.dll, oci.dll и зависимые dll), парочка ключей в реестре и tsnames.ora.

А как это можно цивилизовано "выгрызть" из клиента Оракла и оформить маленькой инсталяшечкой? smile

Автор: LSD 25.3.2005, 22:57
1 Методом научного тыка smile , взяли dll, прописали oracle_home посмотрели на что будет ругаться (скорее всего на отсутствие какой нибудь dll). Но это не самый лучший способ. Или наоборот поставить клиента, посмотреть все что он поставит в систему (включая реестр) и понемногу удалять файлы.
2 Почитать Oracle Universal Installer Concepts Guide про команды файла ответов. И поставить клиент автоматом. Правда инсталяшка будет побольше.

Автор: Hroft 26.3.2005, 16:37
Занимает эта инсталяшка 12 мегабайт. Сам делал именно методом научного тыка. Если интересно кому, то пошлю на почту, хостинг я себе не заводил, выложить некуда, если только по eMule/eDonkey, заодно потестируете и пожелания выскажете, а то мож не будет че работать...
Кому надо?

Автор: LSD 26.3.2005, 22:41
Выложить можно http://www.webfile.ru/. Туда входит только ODBC драйвер?

Автор: Hroft 28.3.2005, 09:04
Туда входят библиотеки OCI (дллки подкаталога бин, по-моему, не все нужны, но мне некогда), тнснамес.ора, чет еще необходимое, прописывает в реестр оракле хоум в локал_машине, в path заносит путь к бину. Делал с помощью GhostInstallerFree. Проверял вроде на голой машине WinXP, работало, но давно, с тех пор много поменял. Драйвер ОДБС туда как раз не входит. Но plsqldeveloper должен заработать сразу, и программы, использующие DOA, тоже.

Автор: Hroft 28.3.2005, 09:20
http://apl.sgu.ru/oci/ocisetup.exe
Если что не работает, пишите, я исправлю. На вирусы не забудьте проверить, на всякий пожарный.

Автор: KaKTyCc 29.5.2006, 14:31
ссылка не работает smile у кого есть, поделитесь

я так понимаю после установки, программа где используется ODAC будет работать на машине, где нет оракла? 

Автор: KaKTyCc 29.5.2006, 23:00
жаль что только для 8ой версии smile 

Автор: LSD 29.5.2006, 23:11
KaKTyCc, сделай свой инсталятор, как это сделать писали выше. 

Автор: KaKTyCc 2.6.2006, 12:09
в path добавляю путь к dllям, добавляю oracle_home в HKLM

после запуска программы пишет что не может загрузить oci.dll 
хотя она есть  smile 
 

Автор: KaKTyCc 2.6.2006, 12:55
такс, уже вроде как продвижки есть

пишет Can't iniеialize OCI Error -1  smile

Добавлено @ 13:05 
как узнать чего ей не хватает, до этого хоть ругалось на нехватку dll  smile   

Автор: KaKTyCc 2.6.2006, 15:03
в общем я ходячий труп  smile до 15 числа надо по-любому сделать инсталлятор, а у меня ни черта не получается  smile  

Автор: KaKTyCc 2.6.2006, 15:53
люди добрые, покажите хоть где их клиента можно скачать
на oracle.com нашел только OracleXEClient  которому нужен второй сервис пак, это просто ****** 

Автор: Sqlninja 2.6.2006, 22:22
Есть такой вариант - вместо InstallShield заюзать WiseInstaller, там есть такая фича как Application Scan, название точно не помню но суть в следующем - запускаешь свое приложение, в инсталляторе указываешь путь к exe-шнику, он сканирует все ресурсы, которые используются программой, типа dll и прочее, и помещает их копии в ваш инсталлятор. Кроме того, мне кажется он проще в использовании. Разберитесь, мне кажется, дожно стрельнуть. 

Автор: Fazil6 2.6.2006, 22:36
а разве для работы Microsoft ODBC for Oracle нужна установка клиента Oracle ? 

Автор: KaKTyCc 2.6.2006, 23:35
завтра буду на чистую машину со вторым сервис паком ставить клиента официального, там и поглядим что он добавляет в реестр и какие dll нужны 

Автор: Sqlninja 3.6.2006, 20:25
Цитата(KaKTyCc @  2.6.2006,  23:35 Найти цитируемый пост)
завтра буду на чистую машину со вторым сервис паком ставить клиента официального, там и поглядим что он добавляет в реестр и какие dll нужны 

И что вам это даст? Ну поставите вы клиента, он создаст вам каталог метров на 70, потом добавит в реестр все что ему захочется. Как вы узнаете что нужно именно вам для вашей программы?



Цитата(Fazil6 @  2.6.2006,  22:36 Найти цитируемый пост)
а разве для работы Microsoft ODBC for Oracle нужна установка клиента Oracle ?  

еще как нужна. 

Автор: LSD 3.6.2006, 20:39
Цитата(Sqlninja @  3.6.2006,  21:25 Найти цитируемый пост)
И что вам это даст? Ну поставите вы клиента, он создаст вам каталог метров на 70, потом добавит в реестр все что ему захочется. Как вы узнаете что нужно именно вам для вашей программы?

1. В реестр добавляетс минимум. Там вообще по моему только ORACLE_HOME прописываются.
2. Можно удалять файлы, до тех пор пока конфигурация сохраняет работоспособность. 

Автор: KaKTyCc 4.6.2006, 16:50
в общем даже с установвленным клиентом при запуске программы вылетает ошибка
Can't initialize OCI: Error -1

 smile  smile  smile даже не знаю что теперь делать 

Автор: LSD 4.6.2006, 17:19
Дай ссылку, что именно ты скачал. 

Автор: KaKTyCc 4.6.2006, 17:46
http://download.oracle.com/otn/nt/oracle10g/xe/10201/OracleXEClient.exe

http://www.oracle.com/technology/software/products/database/xe/htdocs/102xewinsoft.html
http://www.oracle.com/technology/software/products/database/xe/index.html

Добавлено @ 17:50 
ОТБОЙ, по сети приконнектился к БД

ткперь буду смотреть что интересного добавил на той машине клиент  smile  

Автор: KaKTyCc 4.6.2006, 22:25
http://www.crlab.com/odac/index.html

3 абзац

Also with Net option ODAC allows to connect without Oracle client software installed on workstation. In such case ODAC requires only TCP/IP protocol and allows to build really thin database application.

Оказывается все должно работать и без клиента. Завтра в универе проверим  smile 


 

Автор: LSD 5.6.2006, 23:21
ODAC точно работает без клиента (у меня друг с ним работает). 

Автор: KaKTyCc 5.6.2006, 23:29
LSD,  так и есть, только вот на форумах пишут про ограничения какие то, а какие так и не нашел 

Автор: LSD 5.6.2006, 23:35
Я попробую его распросить, правда он работает с Oracle EE, а не XE. 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)