Строка подключения к oracle

Строка подключения к oracle

Я только начал использовать LINQPad, и все отлично работает при подключении к моей базе данных SQL Server, но теперь я пытаюсь настроить второе подключение к моей базе данных Oracle, и я зацикливаюсь на том, как это сделать.

Я загрузил драйвер IQ (v 2.0.8.0 — последний), и когда я иду добавить новое соединение, я выбираю Oracle как поставщика БД и не знаю, как сделать остальное на основе обычной строки подключения, следующим образом:

Я знаю, что вы обычно публикуете то, что вы пробовали, но, поверьте, я пробовал заполнять эти текстовые поля каждый раз, о чем я мог думать и получать ошибки, когда я нажимаю кнопку "Тест".

Кроме того, одна из ошибок, которые я получаю: License not valid due to the problems with dotConnect for Oracle installation — Я не думаю, что это единственная проблема, но я уверен, что мне тоже нужно будет исправить эту проблему.

Любые предложения/ссылки, чтобы предложить, что заполнить, где сделать эту работу?

Используйте подключение к Oracle диалоговое окно для подключения к базе данных Oracle, которые требуется перенести. Use the Connect to Oracle dialog box to connect to the Oracle database that you want to migrate.

Чтобы открыть это диалоговое окно, в файл меню, выберите подключение к Oracle. To access this dialog box, on the File menu, select Connect to Oracle. Если вы ранее подключались, команда является повторное соединение с базой данных Oracle. If you have previously connected, the command is Reconnect to Oracle.

Параметры Options

Поставщик Provider
Выберите поставщик данных для подключения к базе данных Oracle. Select the data access provider for your connection to the Oracle database. Доступные поставщики, поставщик клиента Oracle и поставщик OLE DB. Available providers are the Oracle Client Provider and the OLE DB Provider. По умолчанию используется поставщик клиента Oracle. The default is Oracle Client Provider.

Режим Mode
Выберите режим Standard, TNSNAME или строку подключения. Select either Standard, TNSNAME, or Connection String mode.

В стандартном режиме введите или выберите значения для поставщика, имя сервера, порт сервера, ИД безопасности Oracle, имя пользователя и пароль. In Standard mode, you enter or select values for the provider, server name, server port, Oracle SID, user name, and password.

В режиме TNSNAME введите идентификатор connect (TNS alias) базы данных Oracle, имя пользователя и пароль. In TNSNAME mode, you enter the connect identifier (TNS alias) of the Oracle database, user name, and password.

В режиме строки подключения необходимо предоставить строку подключения. In Connection String mode, you provide a connection string.

Не рекомендуется использовать режим строки подключения, поскольку текст может содержать пароли, и отправляются открытым текстом. We do not recommend that you use Connection String mode because the text might include passwords, and it is sent as clear text.

Читайте также:  Вакуумное напыление алюминия на светоотражатели автомобильных фар

Значение по умолчанию является обычным режимом. The default is Standard mode.

Имя сервера Server name
Введите имя сервера Oracle. Enter the Oracle server name. По умолчанию имя сервера совпадает с именем компьютера. The default server name is the same as the computer name. Это стандартный режим. This is a Standard mode option.

Порт сервера Server port
Если вы используете номер порта 1521 (по умолчанию) для подключения к базе данных Oracle, введите номер порта. If you are using a port number other than 1521 (default) for connections to Oracle, enter the port number. Это стандартный режим. This is a Standard mode option.

Идентификатор подключения Connect identifier
Введите Oracle идентификатор подключения. Enter the Oracle connect identifier. Это псевдоним базы данных, как определено в файле tnsnames.ora локальной. This is the alias of the database as defined in local tnsnames.ora file.

Это режим TNSNAME. This is a TNSNAME mode option.

SID-идентификатор Oracle Oracle SID
Введите идентификатор безопасности для базы данных. Enter the SID for the database. Идентификатор безопасности — это идентификатор, который отличает базы данных Oracle на компьютере. The SID is an identifier that distinguishes the Oracle database on a computer. Идентификатор безопасности по умолчанию для базы данных — это первые восемь символов имени базы данных. The default SID for a database is the first eight characters of the database name.

Это стандартный режим. This is a Standard mode option.

Имя пользователя User name
Введите имя пользователя, который будет использовать SSMA для подключения к базе данных Oracle. Enter the user name that SSMA will use to connect to the Oracle database.

Пароль Password
Введите пароль для имени пользователя. Enter the password for the user name.

Строка соединения Connection string

Не рекомендуется использовать режим строки подключения, поскольку текст может содержать пароли, и отправляются открытым текстом. We do not recommend that you use Connection String mode because the text might include passwords, and it is sent as clear text.

Если вы используете режим строки подключения, введите полной строки подключения для подключения к базе данных Oracle. If you use the Connection String mode, enter the full connection string for the connection to Oracle.

Строки подключения состоят из пар имен и значений параметров. Connection strings consist of parameter name and value pairs.

  • Строки соединения OLE DB, см. в разделе поставщик Microsoft OLE DB для Oracle статье в библиотеке MSDN. For OLE DB connection string information, see Microsoft OLE DB Provider for Oracle article at the MSDN Library.

Для строки подключения SSMA всегда включать параметр поставщика. For SSMA connection strings, always include the Provider parameter. Кроме того убедитесь, что включают параметр порта при подключении к базе данных Oracle. Also, make sure that you include the Port parameter when you connect to Oracle.

Читайте также:  1С присвоение номера документа

рубрики: ADO | Дата: 24 Март, 2017

Недавно столкнулся с необходимостью делать из прямые запросы к базе данных Oracle, используя ADODB.Connection. В этой статье хочу поделиться опытом и рассказать про некоторые особенности с которыми пришлось столкнуться.

Провайдер

Первое, что необходимо для использования ADODB.Connection это наличие в системе провайдера (драйвера), который позволяет подключаться к источнику данных. Для баз данных Oracle существует два драйвера.

Один от компании Microsoft — MSDAORA и второй от Oracle — OraOLEDB. Возможно есть и другие, но мне попадались описания только этих двух. Сразу возникает вопрос как можно проверить установлен ли хоть один из этих драйверов на компьютере. Чтобы понять это можно воспользоваться файлом c расширением *.udl. Если открыть этот файл и перейти на первую закладку — Поставщик данных, то мы увидим перечень всех провайдеров. Как видно на картинке у меня установлен провайдер от Microsoft Microsoft OLE DB Provider for Oracle.


Но я при подключении использовала драйвер от Oracle. Просто из тех соображений, что родной драйвер должен работать лучше. При необходимости можно скачать его с сайта Oracle. Выбираем закладку Downloads, в разделе Enterprise Management пункт See All…


Здесь в разделе Drivers нас интересует пакет Oracle Data Access Components for Windows


Дальше разберетесь сами. Нужно только выбрать правильную разрядность. Не надо только качать пакет где в названии есть Xcopy. В нем используется какая-то полуавтоматическая установка через .bat файлы.
В процессе установки можно выбрать только то, что нас интересует Oracle Provider For OLE DB


Также в процессе установки желательно указать параметры для подключения к серверу с оракловыми базами данных. Или это можно сделать позднее, но для этого придется самостоятельно отредактировать файл tnsnames.ora


После установки откроем наш файл *.udl и теперь мы видим, что на закладке Поставщик данных появилась еще одна строчка с провайдером Oracle Provider for OLE DB

На какой рабочей станции устанавливать драйвер

Теперь немного порассуждаем на каком компьютере должен быть установлен провайдер. Это может отразиться и на выборе разрядности драйвера, о чем говорилось в предыдущем пункте. Раз уж вы читаете эту статью вряд ли вы используете файловый вариант базы 1С, т.к. базы данных Oracle используются как правило очень крупными организациями. Скорее речь идет о клиент-серверном варианте базы 1С. Таким образом мы имеем два варианта.

Либо устанавливать драйвер на каждой клиентской машине, либо один раз на сервере, где физически установлен сервер 1С:Предприятия. Понятно, что ставить драйвер на каждую клиентскую машину это не вариант, тем более, что у разных пользователей могут быть установлены операционные системы с разной разрядностью. Да и само количество пользовательских станций может быть большим. Поэтому устанавливать драйвер будем на сервере 1С:Предприятия. Напомню, что код на сервере 1С:Предприятия выполняется от имени служебного пользователя USR1CV8. Соответственно у этого пользователя должны быть права на использование провайдера.

Читайте также:  Установить звуковые драйвера бесплатно на windows 7

Процедура подключения

Так как драйвер мы установили на сервере, то и установка соединения должна выполняться на сервере, для этого процедуру подключения к оракловой базе разместим в серверном общем модуле ОбщегоНазначенияСервер.

Строки подключения самые примитивные. При необходимости можно добавить нужные параметры.

Примеры запросов к базе данных Oracle

В процессе отладки даже простейших запросов к базе данных Oracle пришлось неоднократно столкнуться с ошибкой вот такого типа ORA-00933: SQL command not properly ended. По сути она говорит о том, что некорректно написан текст запроса. Поскольку ранее я не сталкивался с языком PL/SQL, то пытался делать запросы по аналогии с Transact-SQL. Но как выяснилось есть много тонкостей, которые отличают один язык от другого.

Рассмотрим примеры выполнения запросов к базе данных оракл и возможные ошибки в синтаксисе.
Пусть у нас есть оракловая база данных по имени TEST, в которой есть таблица SAMPLE вот такого вида

PERIOD DESCR PRICE
2017-09-01 Яблоки 100.00

То есть тип полей в нашей таблице: дата, строка и число. Сделаем простейший запрос, который выберет все из таблицы, а на этапе обхода выборки поместим данные в таблицу значений.

Теперь хочу сделать несколько пояснений.

  • Если кто-то заметил, то псевдонимы полей в тексте запроса взяты в кавычки. Это особенность языка PL/SQL. Ни в языке запросов 1С ни в Transact-SQL эти кавычки не нужны.Поэтому, если будете использовать псевдонимы, помните про этот момент, иначе запрос вывалится с ошибкой.
  • В строке запроса

мы преобразуем значение с типом Дата в строку вида «20170901000000».
А теперь предположим, что нам нужно выбрать только первую строку результата запроса. В Transact-SQL это решается так «SELECT TOP 1«. Но для PL/SQL это не работает. Чтобы реализовать это, добавим в конец текста запроса еще одну строчку:

Теперь проделаем обратную операцию. Вставим записи из таблицы значений в таблицу базы данных Oracle.

И опять несколько замечаний

    В следующей строке

мы с помощью языка PL/SQL преобразуем строковое значение даты, например вот такое «20170901235959» в значение с типом Дата.
И хочется обратить внимание на конструкцию

Без заключения текста запроса внутрь блока «begin……end;», запрос выполнялся с ошибкой, причем это только при вставке в таблицу. При выборке (как в предыдущем примере) этот блок не нужен. Обратите внимание, что после end стоит точка с запятой. Также точка с запятой стоит в конце предпоследней строки запроса

Ссылка на основную публикацию
Adblock detector