powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / OracleDataSource: правильность url
16 сообщений из 16, страница 1 из 1
OracleDataSource: правильность url
    #34000483
H.A.M.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всем привет.
Есть след. код:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
 package  testjdbc;
 import  oracle.jdbc.pool.OracleDataSource;
 import  java.sql.*;
 import  java.util.*;

 public   class  Main{
   public   static   void  main(String[] args)  throws  Exception  {
     try     {
      OracleDataSource ods =  new  OracleDataSource();
      ods.setUser("SYS AS SYSDBA");
      ods.setPassword("blah-blah-blah");
      ods.setURL("jdbc:oracle:thin:XXXXX");

      Connection conn = ods.getConnection();
      conn.setAutoCommit(false);
      Statement st = conn.createStatement();
      ResultSet rs = st.executeQuery("SELECT * FROM v$version");
........................
собственно, в чем проблема:
я могу писать вместо ХХХХХ все что угодно, как угодно и сколько угодно, но программа работает. А в доке сказано:
докаFor the JDBC Thin Driver, or Server-side Thin Driver:
ods.setURL("jdbc:oracle:thin:@<database>");

where <database> is either a string of the form
//<host>:<port>/<service_name>, or a SQL*net name-value pair,
or a TNSEntryName.
Я никак не могу понять, почему так. Порылся в нете, ниче не нашел. Хелп кто чем может?
...
Рейтинг: 0 / 0
OracleDataSource: правильность url
    #34000650
Фотография Denis Popov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
H.A.M. wrote:

> я могу писать вместо ХХХХХ все что угодно, как угодно и сколько угодно,
> но программа работает.

И куда она ходит?
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
select s.sid
      , s.serial#
      , s.audsid
      , s.user#
      , s.terminal
      , s.machine
      , s.username
      , s.schemaname
      , s.osuser
      , s.server
      , s.program s_program
      , s.status
from v$session s
where sid = (select sid from v$mystat where rownum =  1 );

Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
OracleDataSource: правильность url
    #34000915
H.A.M.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
т.е. куда ходит? в БД. Запросы выполняются, данные гоняются, все как положено. вот что выдает твой запрос после такого выполнения:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
...
ResultSet rs = st.executeQuery("select s.sid, s.serial#, s.audsid, " +
              "s.user#, s.terminal, s.machine, s.username, s.schemaname, " +
              "s.osuser, s.server, s.program s_program, s.status " +
              "from v$session s where sid = " +
              "(select sid from v$mystat where rownum = 1)");
      System.out.println("*********   <DATABASE INFO>   *********");
      rs.next();
       for ( int  i= 1 ; i<= 12 ; i++)
      {
        System.out.println(rs.getString(i));
      }
.....
Результат149
18
4294967295
0
null
ATHLON2500
SYS
SYS
null
DEDICATED
null
ACTIVE
...
Рейтинг: 0 / 0
OracleDataSource: правильность url
    #34001022
он же
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если у тебя Оракл поднят на той же машине - он ходит в него.
Может посмотреть в этот момент на весь v$session из pl/sql developer'а?
...
Рейтинг: 0 / 0
OracleDataSource: правильность url
    #34001064
H.A.M.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
да, оракл на той же машине, где я запускаю программу.
Так что, он (драйвер) сам все делает?
И как в таком случае прописать эти ХХХХХ, если оракл будет на другой машине?
Я смотрю файл Listener.ora: там и HOST и PORT прописан.
Пишу все этта в url - работает, шлю *.jar другу - он запускает - у него SQLException.
В общем, я запутался...

pl/sql developera нету, но SQLPlus выдает те же результаты (ну sid и еще пара полей разные - так это вроде понятно)
...
Рейтинг: 0 / 0
OracleDataSource: правильность url
    #34001098
он же
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
jdbc:oracle:thin:@server:1521:dbname

где server - имя твоей машины
dbname - имя базы данных
1521 - порт Ораклового листнера (может отличаться)

Именно так пробовал?
Вот прям как здесь ?
...
Рейтинг: 0 / 0
OracleDataSource: правильность url
    #34001118
Фотография Denis Popov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
H.A.M.т.е. куда ходит? в БД. Запросы выполняются, данные гоняются, все как положено.
Я подумал, может тебе чего подскажет имя машины, откуда открыта сессия. Если ATHLON2500 - это и твое имя, и еще имя сервера, на котором стоит Оракл (т.е. ты выполняешь класс на оракловом сервере), то он и пытается стукнуться локально.

Попробовал сам - имхо там не совсем так просто. Он пытвется присоединиться к серверу localhost по порту 1521 с базе с именем ORCL. Даже если я выполняю класс на оракловом сервере, он вылетает с ошибкой:
Код: plaintext
1.
2.
3.
Exception in thread "main" java.sql.SQLException: Listener refused the connection with the following error:
ORA-12505, TNS:listener does not currently know of SID given in connect descriptor
The Connection descriptor used by the client was:
localhost:1521:orcl

видать, из-за того, что база у меня обозвана по-иному.
...
Рейтинг: 0 / 0
OracleDataSource: правильность url
    #34001134
Фотография Denis Popov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
P.S. Имя базы:
Код: plaintext
select name from v$database;
и ли в настройках листенера. А вообще такие вещи надо выносить в какую-то
внешнюю конфигурацию и читать ее перел открытием соединения.
Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
OracleDataSource: правильность url
    #34001167
H.A.M.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
он жеjdbc:oracle:thin:@server:1521:dbname

где server - имя твоей машины
dbname - имя базы данных
1521 - порт Ораклового листнера (может отличаться)

Именно так пробовал?
Вот прям как здесь ?
да прямо так. в оракловской доке по дровам так и написано (см. 1-й пост).
и ли в настройках листенера. А вообще такие вещи надо выносить в какую-то
внешнюю конфигурацию и читать ее перел открытием соединения.
Ну я ж писал что адреса брал из listener.ora.
а насчет выноса - этож просто пример, не грузить же мне тут килограмм кода :)
...
Рейтинг: 0 / 0
OracleDataSource: правильность url
    #34002157
он же
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
H.A.M.
да прямо так. в оракловской доке по дровам так и написано (см. 1-й пост).


дока
For the JDBC Thin Driver, or Server-side Thin Driver:
ods.setURL("jdbc:oracle:thin:@<database>");

where <database> is either a string of the form
//<host>:<port>/<service_name>, or a SQL*net name-value pair,
or a TNSEntryName.


Это несколько отличается от
dbc:oracle:thin:@ [HOST_NAME]:[PORT_NUMBER]:[DATABASE_NAME]
...
Рейтинг: 0 / 0
OracleDataSource: правильность url
    #34003471
H.A.M.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ну да, НЕМНОГО.
Ни так ни так не получается.
А если сам запускаю - то и так, и так...
...
Рейтинг: 0 / 0
OracleDataSource: правильность url
    #34003621
Фотография Denis Popov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Какая ошибка, кстати? Приведи полное сообщение.
...
Рейтинг: 0 / 0
OracleDataSource: правильность url
    #34003928
H.A.M.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
e.toString()ERROR: java.sql.SQLException: Io exception: The Network Adapter could not establish the connection
...
Рейтинг: 0 / 0
OracleDataSource: правильность url
    #34003968
Фотография Denis Popov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
H.A.M. wrote:

> ERROR: java.sql.SQLException: Io exception: The Network Adapter could
> not establish the connection

Значит, до определения имени базы дело не дошло, неправильны хост и/или порт.
Пусть попробует пропинговать удаленный Оракл с машины, где все запускается, если
есть оракловый клиент - проверить через tnsping. А еще очень похоже на файрвол,
часом не включен?
Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
OracleDataSource: правильность url
    #34004158
H.A.M.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Denis PopovА еще очень похоже на файрвол,
часом не включен?
Ес сэр! В точку. Проблема файрвола. После отключения все заработало.
Спасибо!
А насчет локального подключения - видно там умолчания какие-то заданы.
Надо попробовать поменять порт или имя инстанс создать другой.
Премного благодарен за помощь.
...
Рейтинг: 0 / 0
OracleDataSource: правильность url
    #34004192
Фотография Denis Popov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
H.A.M. wrote:

> А насчет локального подключения - видно там умолчания какие-то заданы.

По-моему по умолчанию следующее, я уже упоминал: localhost:1521:ORCL
Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
16 сообщений из 16, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / OracleDataSource: правильность url
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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