JDBC getColumnName getColumnLabel DB2

Можно ли предоставить как имя столбца, так и метку столбца в JDBC ResultSetMetadata в DB2 для запросов, в которых не задействован реальный столбец таблицы?

select substr('Hallo', 1) as greeting from sysibm.sysdummy1

Я хотел бы получить другую метку столбца и имя столбца для вышеуказанного запроса. В этом случае getColumnName и getColumnLabel возвращают строку "GREETING". Я хотел бы установить другую метку столбца (например, "Begrüßung").

Я использую драйвер DB2 JCC4 и DB2 V9. Спасибо.


person andy    schedule 04.09.2012    source источник
comment
Я предпочитаю использовать метод getXXX(int position) и управлять метками столбцов самостоятельно   -  person BigMike    schedule 04.09.2012
comment
Спасибо за ваш комментарий. Обычно я тоже так делаю. Но в этом случае я хотел сделать общий подход. Добавляйте и удаляйте столбцы и их метки динамически в наборе результатов...   -  person andy    schedule 04.09.2012


Ответы (1)


Вы не можете этого сделать. Имя столбца в JDBC определяется как имя исходного столбца. columnLabel — это либо исходное имя столбца, либо — если указано — псевдоним столбца AS.

В вашем запросе есть только столбецLabel (т.е. greeting). То, каким должно быть имя столбца в этом конкретном случае, на самом деле зависит от реализации (это может быть пустая строка, идентичная столбцуLabel или даже что-то совершенно другое).

person Mark Rotteveel    schedule 08.09.2012