Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.
SQL-запрос к Oracle из Excel через ODBC Люди! Подскажите, pls, как написать макрос, который по данным запроса к базе данных Oracle.
Запрос через oledb for odbc к MS SQL Server 2005 Здравствуйте, есть удаленная база данных на Sql Server 2005. Соединение через OLE DB for ODBC с.
Excel через ODBC, Как выбрать через Select столбец из файла Excel по букве? Собственно проблема такая. Надо с помощью команды Select получить данные из столбца файла Excel по.
Очистка данных файла excel через sql-запрос Просьба подсказать как очистить все строки в эксель файле кроме первой через sql запрос.
Источник: www.cyberforum.ru
Connecting to Oracle Database through Excel
I’m trying to connect to an Oracle Database on our server from an Excel sheet, but am having trouble understanding why.
I currently have both 32-bit and 64-bit Oracle 12c installed in different ORACLE_HOME s and have a 32-bit installation of Excel on my 64-bit computer.
I’m trying to connect to an Oracle Database in Excel using the New Query wizard.

When I click From Oracle Database I get the following error/message.

I can continue with my current provider, but when I actually try to connect to a database I get this:

What I don’t understand is why I’m getting this error when I have both 32-bit and 64-bit versions of Oracle 12c installed on my computer. Both are included on my PATH variable (32-bit first), and I also included a specific ORACLE_HOME and TNS_ADMIN to point to my 32-bit installation since my excel is 32-bit.
I really want the ability to query from the database through Excel, but this problem is confusing me to death.
EDIT
I’ve also just added the ODBC Driver from my Oracle home’s into the ODBC Data Source Administrator Tool.

It’s currently able to connect from this tool.

But when I try to connect to going through the ODBC Connection wizard, I know get this: 

1 Answer 1
How did you install 32bit and 64bit Oracle Client?
Short version:
Your excel is 32bit and you try to use the 32bit Oracle. I assume you launch the 64bit version of “ODBC Administrator” – there might be the mismatch. Or you have a problem in your PATH regarding %ORACLE_HOME% and/or %ORACLE_HOME%bin folder
Long version:
Your Excel is 32bit, so in general you did the right approach by putting the 32bit Client into PATH and for ORACLE_HOME , you cannot mix 32bit and 64bit assemblies in one process. Btw, when you follow the instructions above your Windows will manage this automatically.
I assume you installed the Oracle Instant Client. The default Instant Client does not include neither any ODBC driver nor Oracle Data Provider (ODP.NET, Oracle.DataAccess.Client )
You may have 2 ODBC drivers, one from Oracle typically called like Oracle in OraClient12_home1 and one from Microsoft called Microsoft ODBC for Oracle (which should be installed by default Windows installation, however it also requires an Oracle Client).
The ODBC driver from Oracle is available for 32bit and 64bit, the Microsoft driver exits only for 32bit. You have 2 ODBC Administrators, 32bit (run c:WindowsSysWOW64odbcad32.exe ) and 64bit (run c:WindowsSystem32odbcad32.exe ). There you should see installed drivers for 32 resp. 64bit.
Oracle Data Provider
For the Data Provider you have similar situation. You have one from Microsoft (Microsoft .NET Framework Data Provider for Oracle, System.Data.OracleClient ) and from Oracle (Oracle Data Provider for .NET, Oracle.DataAccess.Client , several versions). Both are available for 32bit and 64bit.
In principle it does not matter which driver/provider you use to connect to Oracle – just the architecture (i.e. 32 vs. 64 bit) has to match. Each driver/provider requires according Oracle Client installation. All drivers/providers from Microsoft have been deprecated, you should prefer the Oracle ones (as stated in the warning message)
Others
Oracle provides also the ODP.NET, Managed Driver which does not require any further Oracle Client installation and runs on both, 32bit and 64bit. However, I don’t know whether you can use this in Excel.
Last but not least, you also have OLE DB provider. Again one from Microsoft (Microsoft OLE DB Provider for Oracle) and one from Oracle (Oracle Provider for OLE DB). The Microsoft provider exist only for 32bit and has been deprecated.
Источник: stackoverflow.com
Использование поставщика данных Oracle в Excel Calculation Services
Большинство информации о настройке Excel Calculation Services уже присутствует в интернете, даже на официальных ресурсах:
Однако существует ряд моментов, касаемых использования поставщика данных Oracle, которые не являются очевидными и вызывают вопросы при настройке. Целью данной статьи является освещение вопросов, возникающих при настройке и использовании поставщика данных Oracle.
Существует как минимум три возможных поставщика данных Oracle:
- Поставщик Microsoft OLE DB для Oracle (MSDAORA)
- Поставщик Oracle для OLE DB (OraOLEDB)
- Драйвер Oracle ODBC для Oracle 9.2 (Oracle in OraHome92)
При этом первый, как ясно из названия от Microsoft, два других от Oracle. Microsoft четко дает понять, что их поставщик данных Oracle является устаревшим (deprecated) и не должен использоваться, поскольку использует Oracle Call Interface (OCI) версии 7, что больше не поддерживается Oracle. Более того, Microsoft OLE DB для Oracle является 32-битным и не может быть использован в SharePoint 2010 в виду архитектурных ограничений. Драйвер Oracle ODBC для Oracle 9.2 также не рекомендуется использовать, поскольку его производительность окажется ниже из-за наличия дополнительного слоя доступа к ODBC через ADO. Таким образом, наиболее предпочтительным вариантом из рассматриваемых является Поставщик Oracle для OLE DB.
Для установки и настройки Поставщика Oracle для OLE DB необходимо выполнить следующие шаги:
- Загрузить 64-х битную версию Oracle Data Access Components (ODAC)
- Установить ODAC в соответствии с приложенными инструкциями по установке
- Добавить в переменную окружения PATH пути к домашней папке установки ODAC и к папке bin установки ODAC (например: C:oracle и C:oraclebin)
Для настройки Excel Calculation Services следует убедиться, что Поставщик Oracle для OLE DB присутствует в списке надежных поставщиков данных. Для этого следует перейти в Центр администрирования -> Управление приложениями-службами -> Приложение Служб Excel (название зависит от конфигурации фермы) -> Надежные поставщики данных:

Поскольку Oracle Client использует для своей работы переменные окружения, следует также активировать столь непопулярную настройку для пула приложений IIS, как «Загрузить профиль пользователя». Для этого на веб-сервере SharePoint, на котором размещено Приложение служб Excel следует зайти в Диспетчер служб IIS, найти пул приложений, котором выполняется Приложение служб Excel и, выбрав Дополнительные настройки, установить значение «Загрузить профиль пользователя» в True:

После сохранения настроек пула приложений он будет автоматически перезагружен.
Если вышеописанные настройки произведены верно, поставщик данных Oracle готов к работе с Excel Calculation Service.
Для корректного проведения авторизации на сервере баз данных Oracle также необходимо настроить Службу безопасного хранения (Secure Store Service). Существует два варианта хранения учетных данных для подключения к источнику данных Oracle: непосредственно в книге Excel (embedded) и в Службе безопасного хранения. Хоть это и не кажется очевидным, настраивать SSS необходимо в обоих случаях, поскольку для Excel Calculation Services в обоих случаях необходима учетная запись, от имени которой на сервере будут выполняться запросы к источнику данных Oracle. Эта учетная запись называется учетной записью автоматической службы (Unattended service account). Таким образом, следует сначала настроить Excel Calculation Service на использование учетной записи автоматической службы, а затем, при необходимости, также настроить конечное приложение SSS для авторизации в Oracle. Подробные инструкции о выполнении настройки для SQL авторизации приведены в статье TechNet, настройка для источника данных Oracle производится аналогично. При этом предпочтительнее использование SSS для хранения учетных данных Oracle, поскольку в случае указания учетных данных в строке подключения книги Excel, они хранятся в незашифрованном виде.
Также следует отметить возможность использования файлов подключения к данным (.ODC) для удобства организации и управления способами получения данных службами Excel. Подробно об этом в статье на TechNet.
Источник: myknowledgeshare.wordpress.com
Как я могу подключиться к базе данных Oracle из Excel VBA, используя LDAP?
У нас есть несколько таблиц Excel, подключающихся к базе данных Oracle с использованием подключения ADODB (см. Пример кода ниже). Соединение устанавливается с помощью TNSNAMES, который настраивается на клиентском компьютере с помощью драйвера Oracle.
Этот код работает нормально. Однако было принято решение отказаться от поддержки TNSNAMES.ORA для использования LDAP. Я попытался найти некоторую информацию о том, как использовать LDAP для подключения через VBA, но мне не удалось найти какую-либо полезную информацию.
Я не уверен, разрешает ли соединение ADODB строки соединения LDAP или мне нужно полностью использовать что-то еще. Если кто-нибудь может указать мне правильное направление, это будет оценено.
РЕДАКТИРОВАТЬ
Просто чтобы дать больше информации о моей настройке. Клиент 32 oracle установлен на нашем сетевом диске (z:oracle11). Клиентские машины, использующие это, имеют информацию о драйвере в реестре здесь:
HKEY_LOCAL_MACHINESOFTWAREWOW6432NodeODBCODBCINST.INIOracle в instantclient11_1
«HKEY_LOCAL_MACHINESOFTWAREWOW6432NodeORACLE» имеет ORACLE_HOME и TNS_ADMIN, указывающие на установленный клиент oracle (z:oracle11). TNSNAMES.ORA находится в корне папки установки (z:oracle11).
Эта настройка действует годами и прекрасно работает при подключении через TNSNAMES.
Сайт строк соединения говорит, что формат строки соединения должен быть следующим, если вы хотите установить соединение TNSLESS
UID = MyUserName; PWD = MyPassword;
Основываясь на комментариях и ответах, а также на некоторых дальнейших исследованиях, настройка строки подключения с использованием приведенного ниже кода должна работать. Я должен включить драйвер в строке подключения
Я построил строку подключения, используя текущие данные TNSNAMES.ORA(HOST, PORT, SERVICE_NAME, UID и PWD были отредактированы по соображениям безопасности)
К сожалению, я получаю сообщение об ошибке, которое появляется, если в файле TNSNAMES не существует «DBQ».
Если я изменяю DBQ на SERVER (как в примере строки подключения), я получаю другое сообщение об ошибке:
Я сделал NSLOOKUP для значения «my_host», и оно было решено, поэтому я знаю, что это правильно. Номер порта правильный. Имя службы также является правильным, так же как имя пользователя и пароль.
Я также пытался использовать библиотеку «Microsoft ActiveX Data Objects 2.8» и версию 6.1, которая не имеет никакого значения.
ОТВЕТ
Чтобы уточнить ответ Wernfried Domscheit, просто измените «DBQ = DATABASE_NAME», чтобы значение DATABASE_NAME было вашим значением DNS. Большое спасибо Вернфрид.
Я явно пытался переосмыслить это. Я уверен, что я должен был попробовать это в первую очередь, но, очевидно, нет. Хорошая работа, я попробовал это снова, и прочитал ответ… снова.
Источник: techarks.ru
Connecting to Oracle Database through Excel
I’m trying to connect to an Oracle Database on our server from an Excel sheet, but am having trouble understanding why.
I currently have both 32-bit and 64-bit Oracle 12c installed in different ORACLE_HOME s and have a 32-bit installation of Excel on my 64-bit computer.
I’m trying to connect to an Oracle Database in Excel using the New Query wizard.

When I click From Oracle Database I get the following error/message.

I can continue with my current provider, but when I actually try to connect to a database I get this:

What I don’t understand is why I’m getting this error when I have both 32-bit and 64-bit versions of Oracle 12c installed on my computer. Both are included on my PATH variable (32-bit first), and I also included a specific ORACLE_HOME and TNS_ADMIN to point to my 32-bit installation since my excel is 32-bit.
I really want the ability to query from the database through Excel, but this problem is confusing me to death.
EDIT
I’ve also just added the ODBC Driver from my Oracle home’s into the ODBC Data Source Administrator Tool.

It’s currently able to connect from this tool.

But when I try to connect to going through the ODBC Connection wizard, I know get this: 

1 Answer 1
How did you install 32bit and 64bit Oracle Client?
Short version:
Your excel is 32bit and you try to use the 32bit Oracle. I assume you launch the 64bit version of “ODBC Administrator” – there might be the mismatch. Or you have a problem in your PATH regarding %ORACLE_HOME% and/or %ORACLE_HOME%bin folder
Long version:
Your Excel is 32bit, so in general you did the right approach by putting the 32bit Client into PATH and for ORACLE_HOME , you cannot mix 32bit and 64bit assemblies in one process. Btw, when you follow the instructions above your Windows will manage this automatically.
I assume you installed the Oracle Instant Client. The default Instant Client does not include neither any ODBC driver nor Oracle Data Provider (ODP.NET, Oracle.DataAccess.Client )
You may have 2 ODBC drivers, one from Oracle typically called like Oracle in OraClient12_home1 and one from Microsoft called Microsoft ODBC for Oracle (which should be installed by default Windows installation, however it also requires an Oracle Client).
The ODBC driver from Oracle is available for 32bit and 64bit, the Microsoft driver exits only for 32bit. You have 2 ODBC Administrators, 32bit (run c:WindowsSysWOW64odbcad32.exe ) and 64bit (run c:WindowsSystem32odbcad32.exe ). There you should see installed drivers for 32 resp. 64bit.
Oracle Data Provider
For the Data Provider you have similar situation. You have one from Microsoft (Microsoft .NET Framework Data Provider for Oracle, System.Data.OracleClient ) and from Oracle (Oracle Data Provider for .NET, Oracle.DataAccess.Client , several versions). Both are available for 32bit and 64bit.
In principle it does not matter which driver/provider you use to connect to Oracle – just the architecture (i.e. 32 vs. 64 bit) has to match. Each driver/provider requires according Oracle Client installation. All drivers/providers from Microsoft have been deprecated, you should prefer the Oracle ones (as stated in the warning message)
Others
Oracle provides also the ODP.NET, Managed Driver which does not require any further Oracle Client installation and runs on both, 32bit and 64bit. However, I don’t know whether you can use this in Excel.
Last but not least, you also have OLE DB provider. Again one from Microsoft (Microsoft OLE DB Provider for Oracle) and one from Oracle (Oracle Provider for OLE DB). The Microsoft provider exist only for 32bit and has been deprecated.
Источник: stackoverflow.com
Укороченная версия:
Ваш Excel 32-битный, и вы пытаетесь использовать 32-битный Oracle. Я предполагаю, что вы запускаете 64-битную версию «Администратора ODBC» – может быть несоответствие. Или у вас есть проблема в вашем PATH отношении %ORACLE_HOME% и / или %ORACLE_HOME%bin папке
Длинная версия:
Ваш Excel является 32-битным, поэтому в целом вы сделали правильный подход, поместив 32-битный клиент в PATH и для ORACLE_HOME , вы не можете смешивать 32-битные и 64-битные сборки в одном процессе. Кстати, когда вы будете следовать инструкциям выше, ваша Windows будет управлять этим автоматически.
Я предполагаю, что вы установили Oracle Instant Client. Мгновенный клиент по умолчанию не содержит ни драйвера ODBC, ни поставщика данных Oracle (ODP.NET, Oracle.DataAccess.Client )
У вас может быть 2 драйвера ODBC, один из Oracle, обычно называемый как Oracle в OraClient12_home1, и один из Microsoft, называемый Microsoft ODBC для Oracle (который должен быть установлен по умолчанию при установке Windows, однако для этого также требуется клиент Oracle).
Драйвер ODBC от Oracle доступен для 32-разрядных и 64-разрядных систем, драйвер Microsoft доступен только для 32-разрядных. У вас есть 2 администратора ODBC, 32-разрядный (запуск c:WindowsSysWOW64odbcad32.exe ) и 64-разрядный (запуск c:WindowsSystem32odbcad32.exe ). Там вы должны увидеть установленные драйверы для 32 соотв. 64 – битная.
Поставщик данных Oracle
Для провайдера данных у вас похожая ситуация. У вас есть один из Microsoft ( поставщик Microsoft .NET Framework данных для Oracle , System.Data.OracleClient ) и от Oracle ( Provider Oracle Data для .NET , Oracle.DataAccess.Client , несколько версий). Оба доступны для 32-битных и 64-битных.
В принципе не имеет значения, какой драйвер / провайдер вы используете для подключения к Oracle – должна соответствовать только архитектура (то есть 32 или 64 бита). Каждый драйвер / провайдер требует установки Oracle Client. Все драйверы / провайдеры от Microsoft устарели, вы должны предпочесть Oracle (как указано в предупреждающем сообщении)
другие
Oracle также предоставляет ODP.NET, управляемый драйвер, который не требует дальнейшей установки Oracle Client и работает как на 32- разрядной, так и на 64-разрядной версиях . Тем не менее, я не знаю, можете ли вы использовать это в Excel.
И последнее, но не менее важное: у вас также есть поставщик OLE DB. Опять один от Microsoft ( поставщик OLE DB для Oracle ) и один от Oracle ( поставщик OLE DB для Oracle ). Поставщик Microsoft существует только для 32-разрядной версии и устарел.
Источник: issue.life
Adblock detector
|