JRruby, Sybase JDBC i DBI - pobieranie nazwy kolumny z problemem klauzuli AS

Mam skrypt ruby, który uruchamiam za pomocą interpretera JRuby. Skrypt łączy się z bazą danych Sybase za pomocą DBI i Sybase JDBC (jTDS3.jar i jconn3.jar)

Moim problemem jest to, że mam kwerendę wyboru, która zmienia nazwy kolumn tabeli. Na przykład:

SELECT
t.TRANSACTION as 'business_transaction',
t.TRADE_CURRENCY as 'currency',
t.CURRENCY as 'settlement_currency'
...etc...

FROM 
TRADE t
...etc...

Moim problemem jest używanie przykładów bezpośrednio zdokumentacja

sth = dbh.execute(stmt)

printf "Number of rows: %d\n", rows.size
printf "Number of columns: %d\n", sth.column_names.size
sth.column_info.each_with_index do |info, i|
   printf "--- Column %d (%s) ---\n", i, info["name"]
end

lub po prostu

sth = dbh.execute(stmt)

rows = sth.fetch_all
col_names = sth.column_names
sth.finish
DBI::Utils::TableFormatter.ascii(col_names, rows)

NieWSZYSTKO nazwy pojawiają się, gdy ustawiam je za pomocą klauzuli „as” w zapytaniu. Niektóre są oryginalnymi nazwami pól, a niektóre są nazwami, które podałem.

Na przykład będą listy takie jak:

--- Column 0 (TRANSACTION) ---
--- Column 1 (TRADE_CURRENCY) ---
--- Column 2 (settlement_currency) ---

lub

TRANSACTION
TRADE_CURRENCY
settlement_currency

Podczas testowania tego w Squirrel SQL Client kolumny są poprawnie nazwane, więc czy jest to błąd w sterownikach DBI lub Sybase JDBC? czy robię coś źle?

Każda pomoc byłaby bardzo mile widziana

questionAnswers(3)

yourAnswerToTheQuestion