Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / Не работает thin клиент под Oracle / 5 сообщений из 5, страница 1 из 1
23.05.2005, 10:58
    #33079496
Олег Дж
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не работает thin клиент под Oracle
Начинаю Java осваивать для работы с Oracle.
Скачал пример Пржиялковского.CLASSPATH прописал все классы нужные из статьи.
Но результат возвращается лишь если используется OCI драйвер в примере.
Стоят jdk1.5, Oracle 9i/EE. А хотелось бы пользоваться thin, ведь он работает без клиента Oracle на клиентском месте.

Вот пример с сайта
Код: 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.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
 import  java.sql.*;
 import  oracle.jdbc.driver.*; 

 public   class  StaffByJDBC
{
      public   static   void  main(String[] args)
     {
          String url =  null ;

            if  (args.length >  0 ) {
            if  (args[ 0 ].compareToIgnoreCase("thin") ==  0 ) {
                 url = "jdbc:oracle:thin:@localhost:1521:develop.ru";
          }
           else   if  (args[ 0 ].compareToIgnoreCase("oci") ==  0 ) {
                url = "jdbc:oracle:oci8:@trafik.ru";
          }
           else   if  (args[ 0 ].compareToIgnoreCase("kprb") ==  0 ) {
               url = "jdbc:oracle:kprb:";
}
}

 if  (url ==  null ) {
System.out.println("usage: StaffByJDBC [thin|oci]");
 return ;
}

 try  {
    DriverManager.registerDriver (
         new  oracle.jdbc.driver.OracleDriver());
}
 catch  (Exception e) {  return ; }

 try  {
Connection cn = 
            DriverManager.getConnection (url,"scott","tiger");

Statement st = cn.createStatement();
ResultSet rs = 
                st.executeQuery ("SELECT empno, ename FROM emp");

 while  (rs.next()) {
     System.out.println("Number=" + rs.getString( 1 ) + " " +
                             "Name=" + rs.getString( 2 ));
}

st.close();
cn.close();
}
 catch  (Exception e) {  return ; }
 finally  { System.out.println("All that happened"); }
}
}
...
Рейтинг: 0 / 0
23.05.2005, 11:08
    #33079524
Timm
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не работает thin клиент под Oracle
1. где ошибка выскакивает?
2. тэги
Код: plaintext
блаблабла
надо юзать.
...
Рейтинг: 0 / 0
23.05.2005, 12:08
    #33079712
Олег Дж
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не работает thin клиент под Oracle
Ошибок не выдает этот пример.
Просто не возвращает результат есди параметр THIN ,в отличие от OCI.
...
Рейтинг: 0 / 0
23.05.2005, 12:49
    #33079852
Denis Popov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не работает thin клиент под Oracle
У тебя оракл стоит локально, на машине, откуда выполняется java-класс, и имя базы - develop.ru? Еще, этот блок:

Код: plaintext
1.
2.
 try  {
  DriverManager.registerDriver ( new  oracle.jdbc.driver.OracleDriver());
}  catch  (Exception e) {  return ; }

приведет к окончанию выполнения безо всякого комментария. Попробуй протестировать:

Код: 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  java.util.Locale;

 public   class  Test {

   private   static   final  String USERNAME = "scott";

   private   static   final  String PASSWORD = "tiger";

   private   static   final  String SERVER = "jdbc:oracle:thin:@<host>:1521:<SERVICE_NAME>";

   public   static   void  main(String args[])
     throws  SQLException {
    Locale.setDefault(Locale.UK);
    DriverManager.registerDriver( new  oracle.jdbc.OracleDriver());
    Connection con =  null ;
    Statement st =  null ;
    ResultSet rs =  null ;
     try  {
      con = DriverManager.getConnection(SERVER, USERNAME, PASSWORD);
      st = con.createStatement();
      rs = st.executeQuery("select e.* from scott.emp e");
       while  (rs.next()) {
        System.out.println(rs.getString("empno") + " "  + rs.getString("ename"));
      }
    }  finally  {
       if  (st !=  null ) { st.close(); }
       if  (rs !=  null ) { rs.close(); }
       if  (con !=  null ) { con.close(); }      
    }
  }
}

Подставь свои значения для <host> и <SERVICE_NAME>.
...
Рейтинг: 0 / 0
23.05.2005, 13:49
    #33080019
Олег Дж
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не работает thin клиент под Oracle
Большое спасибо за код.Когда он стал жаловаться,что вроде проблемы с сетью,то я стал писать <SERVICE_NAME> в виде name (SID), а не name.ru (GID)
И все заработало.Наконец то!
Спасибо!
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / Не работает thin клиент под Oracle / 5 сообщений из 5, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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