|
|
|
Java+HP+DB2+ResultSet
|
|||
|---|---|---|---|
|
#18+
люди добрые, помогите жить! осле запуска хранимой процедуры пытаюсь считать поле по имени (Arr.add(rs.getString("name").trim());) вылетает исключение "мол такоко имени нет" пытался получить имя поля при помощи ResultSetMetaData методами getColumnName,getCatalogName 1й вернул мне тотже номер поля второй- пусто. таблица под выходные парамнетры хранится в ДБ2 данные в ней перересовываются только после запуска ХП. по порядковому номеру обращаться нехочу из-за наличия множества абсолютно ненужных мне полей! что делать,что не так,почему????? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.12.2005, 13:06 |
|
||
|
Java+HP+DB2+ResultSet
|
|||
|---|---|---|---|
|
#18+
babkaлюди добрые, помогите жить! осле запуска хранимой процедуры пытаюсь считать поле по имени (Arr.add(rs.getString("name").trim());) вылетает исключение "мол такоко имени нет" пытался получить имя поля при помощи ResultSetMetaData методами getColumnName,getCatalogName 1й вернул мне тотже номер поля второй- пусто. таблица под выходные парамнетры хранится в ДБ2 данные в ней перересовываются только после запуска ХП. по порядковому номеру обращаться нехочу из-за наличия множества абсолютно ненужных мне полей! что делать,что не так,почему????? может быть, действительно нет такого поля в результате? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.12.2005, 14:17 |
|
||
|
Java+HP+DB2+ResultSet
|
|||
|---|---|---|---|
|
#18+
либо драйвер не поддерживает обращение к параметрам по имени... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.12.2005, 14:32 |
|
||
|
Java+HP+DB2+ResultSet
|
|||
|---|---|---|---|
|
#18+
в действительности поле есть(я так думаю) т.к. сама таблица постояно хранится в базе, а при помощи процедуры стираются старые строчки и пишутся новые, если к таблице обратиться обычным запросом и взять значение поля по имени этого поля getString("name"), то все работает...почему? или я что то не допонимаю про возвращаемые данные процедуры?!? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.12.2005, 16:00 |
|
||
|
Java+HP+DB2+ResultSet
|
|||
|---|---|---|---|
|
#18+
при обычном запросе по имени поля мона получить значение, при вызове ХП нельзя!(рабочая таблица одна и таже) так у кого какие версии? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2005, 13:17 |
|
||
|
Java+HP+DB2+ResultSet
|
|||
|---|---|---|---|
|
#18+
что ваще в хп творится? :) декларацию давай и ява код. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2005, 15:30 |
|
||
|
Java+HP+DB2+ResultSet
|
|||
|---|---|---|---|
|
#18+
вот про хп ниче сказать немогу а явский всегда пажалста вумаю этого хватит: //******************************************************** //Подсоединение к базе данных con = DriverManager.getConnection ("jdbc:"+bdName, UserID, Password); //*********************************************************************** // Устанавливаем уровень изоляции - грязное чтение * con.setTransactionIsolation( Connection.TRANSACTION_READ_UNCOMMITTED ); //* //*********************************************************************** con.setAutoCommit(false);//MF-problem //***************************************************************************** sql = "call "+Qualifier+".SOPERN4(?,?,?,?,?)"; call = con.prepareCall( sql ); if(call == null){ throw new NullPointerException("Statement not created"); } call.setShort(1, p1); // P1 - call.setInt(2, Integer.parseInt(esr)); // P2 - код станции (integer) call.setString(3, VrKon); // P3 - верхняя граница временного интервала (char 19) call.setString(4, VrNach); // P4 - нижняя граница временного интервала (char 19) call.registerOutParameter(5, java.sql.Types.SMALLINT); // P6 - код завершения ХП (smallint) boolean rc = call.execute(); endHP = call.getShort( 5 ); if( rc ){ ResultSet rs = call.getResultSet(); while(rs.next()){ /* NOM_VAG.add(rs.getString("NOM_VAG").trim()); NOM_PARK.add(rs.getString("NOM_PARK").trim()); NOM_PUT.add(rs.getString("NOM_PUT").trim()); DATE_OP.add(rs.getString("DATE_OP").trim()); */ NOM_VAG.add(rs.getString(1).trim()); DATE_OP.add(rs.getString(4).trim()); NOM_PARK.add(rs.getString(5).trim()); NOM_PUT.add(rs.getString(6).trim()); } rs.close(); } else { if( endHP == 1 ){ response.sendRedirect( "empty.jsp" ); return; } else { throw new SQLException( "Error HP SOPERN4!<br>HPCODE: "+endHP ); } } ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2005, 15:51 |
|
||
|
Java+HP+DB2+ResultSet
|
|||
|---|---|---|---|
|
#18+
можно конечно попытаться найти автора процедуры...может исходник даст...но енто не так то просто((((( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2005, 15:58 |
|
||
|
Java+HP+DB2+ResultSet
|
|||
|---|---|---|---|
|
#18+
все разобрался! исходя из многочасового опроса сотрудников своей организации выяснилось что енто некая особеность ХП в db2 благодоря которой ХП не может вернуть имя столбца, даже если и возвращает то db2 подменяет имя на порядковый номер....о как... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2005, 16:17 |
|
||
|
Java+HP+DB2+ResultSet
|
|||
|---|---|---|---|
|
#18+
babkaвсе разобрался! исходя из многочасового опроса сотрудников своей организации выяснилось что енто некая особеность ХП в db2 благодоря которой ХП не может вернуть имя столбца, даже если и возвращает то db2 подменяет имя на порядковый номер....о как...:) http://www.sql.ru/forum/actualthread.aspx?tid=240998#2135320 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2005, 16:23 |
|
||
|
|

start [/forum/topic.php?fid=59&fpage=765&tid=2150790]: |
0ms |
get settings: |
9ms |
get forum list: |
14ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
41ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
79ms |
get tp. blocked users: |
1ms |
| others: | 236ms |
| total: | 398ms |

| 0 / 0 |
