powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / Работа с БД через ORADC
5 сообщений из 5, страница 1 из 1
Работа с БД через ORADC
    #34327979
Dim4
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Решил опробовать работу с Oracle 8 через ORADC, но сразу же столкнулся с проблемой.
Получаю ошибку ORA-12154: TNS:could not resolve service name.
Вот как выглядит tnsnames.ora для базы к которой хочу подключиться:
TEST.domenname.RU =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = ip_addres)(PORT = port_number))
)
(CONNECT_DATA =
(SERVICE_NAME = testdb)
)
)

Код на С++ такой:
CString strConnect = _T("login/pass");
this->m_OraDC.SetConnect(strConnect);
this->m_OraDC.SetDatabaseName(_T("testdb"));
CString sSQL = _T("select * from emp");
this->m_OraDC.SetRecordSource(sSQL);*/
this->m_OraDC.Refresh();

Никак не могу понять в чём трабл.
PS: Использую VS2005, на форме лежит ActiveX Oradc Control
...
Рейтинг: 0 / 0
Работа с БД через ORADC
    #34328276
Фотография Termi_uc
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Возможно 3 варианта:
1. В tnsnames.ora неправильно описан testdb. Воспользуйся утилитой ...\oraXX\bin\TNSPING.EXE из командной строки примерно так ...\oraXX\bin\TNSPING.EXE TEST.domenname.RU

2. При подключении к базе Oracle описаной в tnsnames.ora нужно использовать её название в tnsnames.ora . Для тебя это TEST.domenname.RU

3. Чтонить ещё...
...
Рейтинг: 0 / 0
Работа с БД через ORADC
    #34328305
Фотография Termi_uc
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dim4Получаю ошибку ORA-12154: TNS:could not resolve service name.

Ещё 2 варианта, если ты конектишся к локальному серверу :

1. Сервер не запущен. Зайди в "Панель управления"->"Администрирование"->"Службы" и там твоя служба будет называться примерно так: OracleServisXXXXXX, вместо XXXXXX твоё название. Тоесть - OracleServisTestdb. XXXXXX идентичен SERVICE_NAME в файле tnsnames.ora.

2. Сервер запущен неправильно. Если ты запускаеш сервер вручную, делай это через службы и в след. последовательности:
- Сначало запускается лисьнет. Лиснер в службах завётся примерно так: OracleXXXXXXTNSListener, где XXXXXX - что-то типа локального названия базы (наверное), это не столь важно. У меня лисьнер называется так: OracleOraHome92TNSListener.
- Потом запускается сервер.
...
Рейтинг: 0 / 0
Работа с БД через ORADC
    #34328527
Dim4
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Сервер удалённый, он запущен, другой софт который работает с tnsnames.ora работает нормально, взял программу, которая работает с ADO.NET, она коннектится без проблем.
Пробовал варианты с TEST.domenname.RU и просто TEST, результат всегда один и тот же.
...
Рейтинг: 0 / 0
Работа с БД через ORADC
    #34331188
Фотография Termi_uc
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Попробуй так:
1. Перепиши tnsnames.ora (предварительно сохранив оригинал), назови сервер просто test. В пункте PORT напиши 1521 (вместо port_number), узнай IP компа к на котором сервак и в пункте HOST напиши его (вместо ip_addres, без кавычек например HOST = 10.0.0.12 или HOST = mtk-356071d78ee).
2. Пришли рабочий *.exe и код програмы, я попробую у себя.
3. Если это не прокатит, и тебе не обязательно пользоватся ORADC, пришли на моё мыло, адрес своего - вышлю бисплатные AnyDAC и ODAC.
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / Работа с БД через ORADC
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]