Je me suis trouvé une solution:
SELECT "java.lang.Long.decode"(concat('0x',replace(client_mac,'-',''))),
FROM user_accounting_sessions_table
C'est le genre d'une solution de contournement, parce que la première façon qui me vient à l'esprit pour le faire est la suivante:
SELECT "java.lang.Long.parseLong"(replace(client_mac,'-',''),16)
FROM user_accounting_sessions_table
Mais cela jette cette erreur:
java.lang.ArrayIndexOutOfBoundsException: 1
at org.hsqldb.Function.setArgument(Unknown Source)
at org.hsqldb.Parser.readTerm(Unknown Source)
at org.hsqldb.Parser.readFactor(Unknown Source)
at org.hsqldb.Parser.readSum(Unknown Source)
at org.hsqldb.Parser.readConcat(Unknown Source)
at org.hsqldb.Parser.readCondition(Unknown Source)
at org.hsqldb.Parser.readAnd(Unknown Source)
at org.hsqldb.Parser.readOr(Unknown Source)
at org.hsqldb.Parser.parseExpression(Unknown Source)
at org.hsqldb.Parser.parseSelect(Unknown Source)
at org.hsqldb.Parser.compileSelectStatement(Unknown Source)
at org.hsqldb.DatabaseCommandInterpreter.executePart(Unknown Source)
at org.hsqldb.DatabaseCommandInterpreter.execute(Unknown Source)
at org.hsqldb.Session.sqlExecuteDirectNoPreChecks(Unknown Source)
at org.hsqldb.Session.execute(Unknown Source)
at org.hsqldb.jdbc.jdbcStatement.fetchResult(Unknown Source)
at org.hsqldb.jdbc.jdbcStatement.execute(Unknown Source)
at sun.reflect.GeneratedMethodAccessor35.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at com.onseven.dbvis.b.B.B.?(Z:2256)
at com.onseven.dbvis.b.B.F$A.call(Z:2838)
at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
at java.util.concurrent.FutureTask.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Il semble que le problème est avec le deuxième paramètre. Cependant, le premier fonctionne bien.
La trace de la pile montre une ancienne version de HSQLDB. Il n'y a aucun problème avec la deuxième requête lorsqu'il est utilisé avec une version actuelle de HSQLDB. – fredt