Гость
Форумы / Oracle [игнор отключен] [закрыт для гостей] / oracle+java / 4 сообщений из 4, страница 1 из 1
19.10.2002, 09:18
    #32059947
pvnic
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
oracle+java
вот скажите мне господа, какого ... это не работает?

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
  public void showTable(String tableName)  {
    logArea.append( "Start show table: " +tableName+ "\n" );
    try {
      Statement stmt = conn.createStatement();
      ResultSet rs = stmt.executeQuery( "SELECT gr_id FROM " +tableName);
      while (rs.next()){
        String grId = rs.getString( "1 ");
        System.out.println(grId);
//        String grName = rs.getString( "1 ");
//        String grDescr = rs.getString( "2 ");
//        System.out.println( "Id: " +grId+ "; Name: " +grName+ "; Description: " +grDescr);
      }
    }
    catch (Exception ex) {
        logArea.append( "Error in showTable: \n" +ex.toString());
    }
  }


соединение установленно...
да еще - в чем разница м-цу osi9 & thin?
...
Рейтинг: 0 / 0
13.11.2002, 14:43
    #32067510
UrfinDjusse
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
oracle+java
Насколько я вижу из ResultSet ты пыташся выдавить два значения
String grName = rs.getString("1");
String grDescr = rs.getString("2");
А в самом запросе просиш только одно :SELECT gr_id FROM +tableName
...
Рейтинг: 0 / 0
13.11.2002, 15:10
    #32067539
softy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
oracle+java
"А в самом запросе просиш только одно :SELECT gr_id FROM +tableName"

Дело не в этом. У него же закоментарено:

// String grName = rs.getString("1");
// String grDescr = rs.getString("2");
// System.out.println("Id: "+grId+"; Name: "+grName+"; Description: "+grDescr);

Ошибка в том что в методе getString укзывается имя столбца таблицы. А если нужно по номеруЮ то надо передовать не текстовыый, а числовой параметр,
т.е не
String grId = rs.getString("1"), а
String grId = rs.getString(1);
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
getString
public String getString(String columnName)
                 throws SQLException
Gets the value of the designated column in the current row of this ResultSet object as a String in the Java programming language.
Parameters:
columnName - the SQL name of the column
Returns:
the column value; if the value is SQL NULL, the value returned is null
Throws:
SQLException - if a database access error occurs
...
Рейтинг: 0 / 0
15.11.2002, 20:13
    #32068551
ShgGena
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
oracle+java
Should be:

public void showTable(String tableName) {
logArea.append("Start show table: "+tableName+"\n");
try {
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("SELECT gr_id FROM "+tableName);
while (rs.next()){
String grId = rs.getString(1);
/* or String grId = rs.getString("gr_id"); */
System.out.println(grId);
}
}
catch (Exception ex) {
logArea.append("Error in showTable: \n"+ex.toString());
}
}

beacuse rs.getString(...); use 2 overloaded methods:
-- getString(int index_of_field)
-- getString(String name_of_field)
...
Рейтинг: 0 / 0
Форумы / Oracle [игнор отключен] [закрыт для гостей] / oracle+java / 4 сообщений из 4, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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