С Новым годом! Форум программистов, компьютерный форум, киберфорум
Delphi: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
1 / 1 / 0
Регистрация: 31.01.2014
Сообщений: 21

Не удается подключиться к Oracle через ADO

18.02.2023, 20:41. Показов 1101. Ответов 10

Студворк — интернет-сервис помощи студентам
Здравствуйте!
Пытаюсь подключиться из Delphi 10.4 через компонент ADOConnection к Oracle 21с .
Выдаёт ошибку: "Не выполнена проверка соединения из-за ошибки при инициализации поставщика. Не найден клиент Oracle и сетевые компоненты. Компоненты предоставляются корпорацией Oracle и входят в клиентское программное обеспечение Oracle версии 7.3.3 или более поздней.
Невозможно использовать данный поставщик, пока не будут установлены эти компоненты."
Пробовал искать и выполнять инструкции - не получается.

Подскажите пожалуйста, как правильно сделать?
Миниатюры
Не удается подключиться к Oracle через ADO  
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
18.02.2023, 20:41
Ответы с готовыми решениями:

Не удается подключиться к Oracle через ADO
здравствуйте, пытаюсь подключиться из delphi через компонент adoconnection к oracle 18с . выдаёт ошибку: Не выполнена проверка...

Не удается подключиться к базе данных oracle в приложении C#
Выдает ошибку : Дополнительные сведения: Произошли ошибки во время выполнения многошаговой операции OLE DB. По возможности, проверьте...

Не удается подключиться к Oracle: ORA-12170: TNS: истекло время ожидания соединения
Здравствуйте, в очередной раз включил компьютер, чтобы работать над БД. Запускаю как обычно PLSQL DEVELOPER и не заходит, ни в какую.Так же...

10
 Аватар для Пытливый
3763 / 2267 / 705
Регистрация: 29.05.2013
Сообщений: 9,622
18.02.2023, 20:44
Ado не имеет встроенной поддержки Oracle. Подключится через ADO к Ораклу можно только через ODBC драйвер Оракла, а он устанавливается обычно при установке клиента Оракла.
ПС: Но вообще ADO для подключения к Ораклу обычно не используют, насколько я помню для этого обычно ставят ODAC.
0
1 / 1 / 0
Регистрация: 31.01.2014
Сообщений: 21
18.02.2023, 21:40  [ТС]
Пытливый, а нет ли где подробной инструкции?
А то уже несколько дней безуспешно пытаюсь подключить.
0
Модератор
 Аватар для D1973
9908 / 6445 / 2455
Регистрация: 21.01.2014
Сообщений: 27,354
Записей в блоге: 3
19.02.2023, 05:05
Цитата Сообщение от ImrDuke Посмотреть сообщение
подключиться из Delphi 10.4 через компонент ADOConnection
А FireDAC чем не устроил?
0
1 / 1 / 0
Регистрация: 31.01.2014
Сообщений: 21
19.02.2023, 10:23  [ТС]
Вопрос решен установкой компонента Devart_ODac_v11.4.1_for_Delphi_10.4
0
1 / 1 / 0
Регистрация: 31.01.2014
Сообщений: 21
19.02.2023, 16:53  [ТС]
Теперь уперся в другую стену.
Подключаюсь к БД.
Delphi
1
2
OraSession1.ConnectString := 'Direct=True;Host=127.0.0.1;SID=XE;User ID=SYSTEM;Password=test';
OraSession1.Connected := True;
Могу выполнить запрос
Delphi
1
2
3
OraQuery1.SQL.Text := 'select banner from v$version';
OraQuery1.Open;
StatusBar1.Panels[0].Text := OraQuery1.fieldByName('banner').AsString;
А если пытаюсь выполнить INSERT, получаю ошибку: "ora-00942 таблица или представление пользователя не существует"
Delphi
1
2
OraQuery1.SQL.Text := 'INSERT INTO GAS_VALUES (GAS_VAL_ID) VALUES ('+IntToSTR(1)+')';
OraQuery1.ExecSQL;
Разрешения у пользователя SYSTEM на эту таблицу на INSERT есть.
0
Модератор
 Аватар для D1973
9908 / 6445 / 2455
Регистрация: 21.01.2014
Сообщений: 27,354
Записей в блоге: 3
19.02.2023, 18:01
Ну а селест из этой таблицы отрабатывает?
0
1 / 1 / 0
Регистрация: 31.01.2014
Сообщений: 21
19.02.2023, 18:24  [ТС]
D1973, нет. Из этой таблицы на Select такая же ошибка.
0
 Аватар для Пытливый
3763 / 2267 / 705
Регистрация: 29.05.2013
Сообщений: 9,622
19.02.2023, 18:55
Вы бы для начала установили менеджер БД и в нем проводили эксперименты, а уже рабочие запросы в дельфи экспортировали. Там и посмотрели бы какие права у юзера есть на базу. Вполне возможно, что к этой таблице прав нет вообще никаких.
0
1 / 1 / 0
Регистрация: 31.01.2014
Сообщений: 21
19.02.2023, 19:13  [ТС]
В менеджере всё работает.
На таблицу у пользователя SYSTEM были все права. Но в менеджере я соединился и создал таблицу под пользователем SYSDBA.
Когда я соединился уже из под SYSTEM, то обнаружил что такой таблицы нет. Создал её заново и всё заработало.

Всю жизнь работал только с MS SQL, там таких приколов не встречал. Что ж, буду разбираться теперь как в Oracle устроено с распределением прав.
0
4217 / 3059 / 583
Регистрация: 21.01.2011
Сообщений: 13,203
20.02.2023, 09:31
Цитата Сообщение от ImrDuke Посмотреть сообщение
создал таблицу под пользователем SYSDBA
Нет такого пользователя. sysdba - это системная привилегия. Пользователь, скорее всего, sys

Цитата Сообщение от ImrDuke Посмотреть сообщение
буду разбираться теперь как в Oracle устроено с распределением прав.
В данном случае дело не в правах. Если объект находится в другой схеме, то кроме выдачи прав надо перед именем объекта писать префикс - имя схемы ( scheme.table1 ), либо создавать синоним (приватный или public).

Цитата Сообщение от ImrDuke Посмотреть сообщение
Всю жизнь работал только с MS SQL, там таких приколов не встречал
Естественно, это 2 разные СУБД. Перед началом работы с Oracle неплохо бы почитать оф. доку, для начала хотя бы том Concepts
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
20.02.2023, 09:31
Помогаю со студенческими работами здесь

как подключиться к БД InterBase через ADO?
Подскажите как подключиться к БД InterBase через ADO. В частности какую ConnectionString (или параметры соедеинения нужно использовать)?...

Подключиться к базе данных Oracle через ODBC через MS Access 2016
Мне дали следующую информацию: 1. Строка соединения с БД: WIDBWEB = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST =...

Как подключиться через Ado к листам Excel?
Знаю строку для установления связи с файлом. Но как открыть recordset на лист (например, мне нужно открыть лист1). Пишу я в VC++. Спасибо...

Получение данных через ADO из Oracle
Ghbdtn ВСЕМ! При подключении к ORACLE иногда получаю пустой SELECT, хотя данные в таблице имеются. В то время, как IDC-запрос к этой...

Обращение к БД Oracle через ADO.Net
строку подключения напиши и проверь права на директорию где лежит ociw32.dll


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение. И на уровне агентов добавится между грибами или бактериями взаимодействий. До того я пробовал подход через многомерные массивы,. . .
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути
Programma_Boinc 01.01.2026
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути Сочетание глобально распределённой вычислительной мощности и инновационных. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru