powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Проблема со cтрокой подлключения к БД Oracle
25 сообщений из 28, страница 1 из 2
Проблема со cтрокой подлключения к БД Oracle
    #34836047
Don VinNi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Народ помогите разобратса с проблемой. С БД Oracle не разу не работал, но есть лотус агент который подключается к БД Oracle. Агент последний раз запускался в 2005 г. А потом говорят что выводил ошибку. т.е не работал. Вот тепер мне приходится разбиратся с java кодом. В коде для конекта прописано следующие строки:

Код: plaintext
1.
2.
3.
4.
5.
..................
String url = "jdbc:oracle:thin:@"+cs.getHost()+cs.getDbname();
 try {
      DriverManager.registerDriver( new  oracle.jdbc.driver.OracleDriver());
      con = DriverManager.getConnection(url, cs.getLogin(), cs.getPass());
..................

Почитал тут . jdbc:oracle:thin:@<host>:<port>:<sid> Но непонел что надо указывать в <sid> , т.к в коде не прописано это поле. Вопрос зачем нужен <sid> и объязателноли его указывать в url для конекта?
...
Рейтинг: 0 / 0
Проблема со cтрокой подлключения к БД Oracle
    #34836062
Фотография Denis Popov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Don VinNi wrote:

> Вопрос зачем нужен <sid> и обязательно ли его указывать в url для конекта?

Обязательно. Ты можешь присоединиться к используемой Оракловой базе каким-либо
иным способом (через sqlplus, например), либо имеешь доступ непосредственно на
оракловый сервер? На какой платформе он работает?
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Проблема со cтрокой подлключения к БД Oracle
    #34836215
Don VinNi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Denis Popov
Don VinNi wrote:

> Вопрос зачем нужен <sid> и обязательно ли его указывать в url для конекта?

Обязательно. Ты можешь присоединиться к используемой Оракловой базе каким-либо
иным способом (через sqlplus, например), либо имеешь доступ непосредственно на
оракловый сервер? На какой платформе он работает?
Posted via ActualForum NNTP Server 1.4

Имеется непосредственный доступ на ораклевый сервер, в качестве серверной платформы если не ошибаюсь используется Linux(а может и нет :)). Как я понел sid - это System Identifier. Но он какую систему идентифицирует?
...
Рейтинг: 0 / 0
Проблема со cтрокой подлключения к БД Oracle
    #34836229
Фотография Denis Popov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Don VinNiНо он какую систему идентифицирует?
Теперь вместо SID чаще используют понятие SERVICE_NAME:

http://download-uk.oracle.com/docs/cd/B19306_01/network.102/b14212/concepts.htm#i1048823

http://download-uk.oracle.com/docs/cd/B19306_01/network.102/b14212/glossary.htm#i1000589

Зайди на сервер и посмотри, что прописано в файле /etc/oratab. Там должно быть примерно следующее:
Код: plaintext
XXX:/app/oracle/product/10.2/:Y

XXX - и есть твой SID или SERVICE_NAME. Либо опять же на сервере запусти sqlplus:
Код: plaintext
# sqlplus /nolog

присоединись как SYS и сделай запрос:

Код: plaintext
1.
2.
SQL> connect / as sysdba

SQL> select instance_name from V$INSTANCE;
...
Рейтинг: 0 / 0
Проблема со cтрокой подлключения к БД Oracle
    #34851519
super
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
у меня проблема с подключением к Oracle 9i из Java.прочитал,что надо прописать CLASSPATH в JAva путь к драйверу оракла,но где это сделать и как?я не знаю?У меня приложение должно подключаться к базе и выполнять с ней определенные действия.Подскажите мне новичку,пожалуйста, что делать?
...
Рейтинг: 0 / 0
Проблема со cтрокой подлключения к БД Oracle
    #34851839
MBasil
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
To super

На платформе Windows надо в переменной окружающей среды CLASSPATH указать ссылку на
jar файл с драйвером для Oracle это файл ojdbc14.jar:

SET CLASSPATH=./classes;D:\W_JDBC\lib\ojdbc14.jar

или в строке выполнения программы

java -cpD:\W_JDBC\lib\ojdbc14.jar MyClass
...
Рейтинг: 0 / 0
Проблема со cтрокой подлключения к БД Oracle
    #34851840
MBasil
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Извините пропустил пробел
java -cp D:\W_JDBC\lib\ojdbc14.jar MyClass
...
Рейтинг: 0 / 0
Проблема со cтрокой подлключения к БД Oracle
    #34852323
super
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо вам огромное,что напомнили про переменные среды в Winde.Я такое уже делал когда-то,но забыл про это!!!:-). А когда мы пишем опцию -ср при запуске и компиляции программы у нас происходит копирование данного класса в директорию где находится java-программа???
...
Рейтинг: 0 / 0
Проблема со cтрокой подлключения к БД Oracle
    #34853897
super
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Classpath я прописал,драйвер загружается но соединение не хочет устанавливаться,хотя вроде все тоже самое делаю.Host прописываю и Ip или именем компа,порт указываю 1521,указываю service name базы ,но?????????
...
Рейтинг: 0 / 0
Проблема со cтрокой подлключения к БД Oracle
    #34853985
Garrick
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Don VinNiНарод помогите разобратса с проблемой. С БД Oracle не разу не работал, но есть лотус агент который подключается к БД Oracle. Агент последний раз запускался в 2005 г. А потом говорят что выводил ошибку. т.е не работал. Вот тепер мне приходится разбиратся с java кодом. В коде для конекта прописано следующие строки:

Код: plaintext
1.
2.
3.
4.
5.
..................
String url = "jdbc:oracle:thin:@"+cs.getHost()+cs.getDbname();
 try {
      DriverManager.registerDriver( new  oracle.jdbc.driver.OracleDriver());
      con = DriverManager.getConnection(url, cs.getLogin(), cs.getPass());
..................

Почитал тут . jdbc:oracle:thin:@<host>:<port>:<sid> Но непонел что надо указывать в <sid> , т.к в коде не прописано это поле. Вопрос зачем нужен <sid> и объязателноли его указывать в url для конекта?

Может быть когда-то и применялась такая строка доступа и она работала, но я использую сделующую конструкцию:

Код: plaintext
1.
2.
3.
4.
5.
6.
 import  oracle.jdbc.pool.OracleDataSource;

OracleDataSource.setURL("jdbc:oracle:thin:@//" + sHost" + ": 1521 /" + sSID);
OracleDataSource.setUser("user");
OracleDataSource.setPassword("password");
Connection conn = OracleDataSource.getConnection();

sHost = IP-адрес или доменное имя сервера.
sSID = SID или Service Name сервера Oracle, т.е. его внутренне, "оракловое" имя.
1521 = стандарный порт Oracle.

Использую JDBC драйвера от Oracle 10g. Работает с сервером Oracle 8i и Oracle 10g. Здесь есть сами JDBC драйвера, примеры и документация по ним.
...
Рейтинг: 0 / 0
Проблема со cтрокой подлключения к БД Oracle
    #34858712
super
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Garrick Don VinNiНарод помогите разобратса с проблемой. С БД Oracle не разу не работал, но есть лотус агент который подключается к БД Oracle. Агент последний раз запускался в 2005 г. А потом говорят что выводил ошибку. т.е не работал. Вот тепер мне приходится разбиратся с java кодом. В коде для конекта прописано следующие строки:

Код: plaintext
1.
2.
3.
4.
5.
..................
String url = "jdbc:oracle:thin:@"+cs.getHost()+cs.getDbname();
 try {
      DriverManager.registerDriver( new  oracle.jdbc.driver.OracleDriver());
      con = DriverManager.getConnection(url, cs.getLogin(), cs.getPass());
..................

Почитал тут . jdbc:oracle:thin:@<host>:<port>:<sid> Но непонел что надо указывать в <sid> , т.к в коде не прописано это поле. Вопрос зачем нужен <sid> и объязателноли его указывать в url для конекта?

Может быть когда-то и применялась такая строка доступа и она работала, но я использую сделующую конструкцию:

Код: plaintext
1.
2.
3.
4.
5.
6.
 import  oracle.jdbc.pool.OracleDataSource;

OracleDataSource.setURL("jdbc:oracle:thin:@//" + sHost" + ": 1521 /" + sSID);
OracleDataSource.setUser("user");
OracleDataSource.setPassword("password");
Connection conn = OracleDataSource.getConnection();

sHost = IP-адрес или доменное имя сервера.
sSID = SID или Service Name сервера Oracle, т.е. его внутренне, "оракловое" имя.
1521 = стандарный порт Oracle.

Использую JDBC драйвера от Oracle 10g. Работает с сервером Oracle 8i и Oracle 10g. Здесь есть сами JDBC драйвера, примеры и документация по ним.
импортируется нормально, без вопросов.Только при попытке обратиться к OracleDataSource выдает ошибку, говорит,что это не статичный метод. Можете объяснить в чем дело,пожалуйста?
...
Рейтинг: 0 / 0
Проблема со cтрокой подлключения к БД Oracle
    #34860066
Garrick
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
superимпортируется нормально, без вопросов.Только при попытке обратиться к OracleDataSource выдает ошибку, говорит,что это не статичный метод. Можете объяснить в чем дело,пожалуйста?

Вы наверное его внутри
Код: plaintext
 public   static   void  main( String args[] )
вызываете...
...
Рейтинг: 0 / 0
Проблема со cтрокой подлключения к БД Oracle
    #34860161
super
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
нет,я его вызываю из отдельной процедуры,которая идет без слова static.
...
Рейтинг: 0 / 0
Проблема со cтрокой подлключения к БД Oracle
    #34860191
Фотография Timm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пардон, но КМК это в ДНК :(
...
Рейтинг: 0 / 0
Проблема со cтрокой подлключения к БД Oracle
    #34860449
Garrick
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
superнет,я его вызываю из отдельной процедуры,которая идет без слова static.
Вы уверены? В Java нет процедур...
Скачайте с той страницы, на которую я давал ссылку выше, примеры работы с JDBC - там всё понятно сделано и работает. Не обязательно из запускать, т.к. для этого надо иметь "учебную" базу в Oracle, просто внимательно почитайте их. В крайнем случае опубликуйте свой код здесь, если, конечно, он не очень большой. Много букв читать народ не осилит.
...
Рейтинг: 0 / 0
Проблема со cтрокой подлключения к БД Oracle
    #34863089
super
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
import oracle.jdbc.pool.OracleDataSource;
...............................
/////////По нажатию кнопки происходит вызов следующего дела
public void Delo(String scn_first,String scn_last)
throws SQLException{
try{
OracleDataSource.setURL("jdbc:oracle:thin:@//192.168.1.141:1521/proba" );
OracleDataSource.setUser("scott");
OracleDataSource.setPassword("1234");
Connection conn = OracleDataSource.getConnection();
}
catch(SQLException e){}
}

вот в принципе и все что не работает.
...
Рейтинг: 0 / 0
Проблема со cтрокой подлключения к БД Oracle
    #34863225
Фотография Denis Popov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
super wrote:

http://www.java2s.com/Code/Java/Database-SQL-JDBC/OracleDataSourceDemo.htm
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Проблема со cтрокой подлключения к БД Oracle
    #34864337
super
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Народ,спасибо что вы мне оказываете помощь.:)
Перешел по последней предложенной ссылке.пример хороший приведен. копирую его,меняю даные под себя,но опять ошибка!!! Может это все из-за того что я пытаюсь компилировать с посощью JDK встроенной в Oracle 9i(c:\oracle\ora92\jdk\bin)? Может в этом вся беда?
...
Рейтинг: 0 / 0
Проблема со cтрокой подлключения к БД Oracle
    #34864344
Фотография Denis Popov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
super wrote:

> Перешел по последней предложенной ссылке.пример хороший приведен.
> копирую его,меняю даные под себя,но опять ошибка!!! Может это все из-за
> того что я пытаюсь компилировать с посощью JDK встроенной в Oracle
> 9i(c:\oracle\ora92\jdk\bin)? Может в этом вся беда?

Покажи текст класса и саму ошибку.
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Проблема со cтрокой подлключения к БД Oracle
    #34864358
super
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
 import  java.sql.*;
 import  oracle.jdbc.pool.*;

 public   class  TestThinDSApp {

   public   static   void  main(String args[])  throws  ClassNotFoundException,
      SQLException {

    // These settings are typically configured in JNDI
    // so they a implementation specific
    OracleDataSource ds =  new  OracleDataSource();
    ds.setDriverType("thin");
    ds.setServerName("rabota");
    ds.setPortNumber( 1521 );
    ds.setDatabaseName("proba.rabota"); // sid
    ds.setUser("scott");
    ds.setPassword("1234");

    Connection conn = ds.getConnection();

    Statement stmt = conn.createStatement();
    ResultSet rset = stmt
        .executeQuery("select 'Hello Thin driver data source tester '||"
            + "initcap(USER)||'!' result from dual");
     if  (rset.next())
      System.out.println(rset.getString( 1 ));
    rset.close();
    stmt.close();
    conn.close();
  }
}
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
C:\oracle\ora92\jdk\bin>javac TestThinDSApp.java

C:\oracle\ora92\jdk\bin>java TestThinDSApp
Exception in thread "main" java.lang.NoClassDefFoundError: javax/sql/DataSource
        at java.lang.ClassLoader.defineClass0(Native Method)
        at java.lang.ClassLoader.defineClass(ClassLoader.java:486)
        at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:111)
        at java.net.URLClassLoader.defineClass(URLClassLoader.java:248)
        at java.net.URLClassLoader.access$100(URLClassLoader.java:56)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:195)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:297)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:286)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:253)
        at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:313)
        at TestThinDSApp.main(TestThinDSApp.java:11)
...
Рейтинг: 0 / 0
Проблема со cтрокой подлключения к БД Oracle
    #34864362
super
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
в этой строке выдает ошибку OracleDataSource ds = new OracleDataSource();
...
Рейтинг: 0 / 0
Проблема со cтрокой подлключения к БД Oracle
    #34864389
Фотография Denis Popov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Java ранней версии, в Oracle 9.2 используется JDK 1.3. Возьми поновее или используй получение соединения через DriverManager, примеров тут полно .
...
Рейтинг: 0 / 0
Проблема со cтрокой подлключения к БД Oracle
    #34864394
Фотография Софтверный проктолог
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я бы порекомендовал воспользоваться следующим подходом:
Код: plaintext
1.
2.
3.
4.
5.
6.
Properties properties =  new  Properties();
properties.put("user",...);
properties.put("password",...);
DriverManager.registerDriver( (Driver)  Class .forName("oracle.jdbc.OracleDriver").newInstance());

Connection conn = DriverManager.getConnection("jdbc:oracle:thin:@....:1521:orcl", properties);
...
Рейтинг: 0 / 0
Проблема со cтрокой подлключения к БД Oracle
    #34864900
super
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
народ,спасибо вам за все.поставил netbeans 5.5,все работает.:)для интереса попробовал это сделать же с помошью jdk 1.6.0_03, он выдает ошибки,хотя прописываю ему откуда драйвер брать.Он не хочет регистрировать драйвер.(DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver())) в этой строке выдает ошибку.но при этом нормально относится к строке import oracle.jdbc.driver.OracleDriver!!!В чем дело не понимаю.Мне это не жизненно важно,но просто интересно почему netbeans все нормально видит,а jdk 1.6.0_03 нет??!!
...
Рейтинг: 0 / 0
Проблема со cтрокой подлключения к БД Oracle
    #34865506
super
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
И еще встал один вопрос: как использую данную схему подключения к Ораклу, подключится с правами SYSDBA?
...
Рейтинг: 0 / 0
25 сообщений из 28, страница 1 из 2
Форумы / Java [игнор отключен] [закрыт для гостей] / Проблема со cтрокой подлключения к БД Oracle
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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