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

Код: 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
oracle+java
    #32067510
UrfinDjusse
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Насколько я вижу из ResultSet ты пыташся выдавить два значения
String grName = rs.getString("1");
String grDescr = rs.getString("2");
А в самом запросе просиш только одно :SELECT gr_id FROM +tableName
...
Рейтинг: 0 / 0
oracle+java
    #32067539
Фотография softy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
"А в самом запросе просиш только одно :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
oracle+java
    #32068551
ShgGena
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
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
4 сообщений из 4, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / oracle+java
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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