Cómo usar la función SQL RANDOM () en un Netbeans JavaDB

Necesito hacer una llamada SQL en un pequeño JavaDB local en Netbeans 7.2 para extraer una sola fila aleatoria de la base de datos.

SELECT * FROM JAVA2.FORTUNES ORDER BY RANDOM() 

Hasta ahora, tengo que trabajar con la función RANDOM (), pero tengo problemas para que funcione LIMIT 1, devuelve un error de syntax.

Sé que cada base de datos tiene una forma diferente de hacer esto, y no puedo entender cómo funciona específicamente para este JavaDB en Netbeans (tengo que trabajar en una base de datos Oracle separada con diferente syntax).

¿Existe una forma específica de la base de datos Java o ANSII para devolver una fila con la syntax anterior?

Java DB usa la syntax OFFSET / FETCH de SQL para obtener esta funcionalidad.

Suponiendo que RANDOM () los ordene correctamente, la siguiente syntax debería funcionar:

 SELECT * FROM JAVA2.FORTUNES ORDER BY RANDOM() OFFSET 0 ROWS FETCH NEXT 1 ROW ONLY 

De http://db.apache.org/derby/faq.html#limit

Derby no admite la syntax LIMIT. Sin embargo, Derby 10.4 agregó la función ROW_NUMBER y Derby 10.7 agregó las cláusulas OFFSET y FETCH.

Derby también admite la limitación del número de filas devueltas por una consulta a través de JDBC. Por ejemplo, para obtener las primeras 5 filas de una tabla grande:

 Statement stmt = con.createStatement(); stmt.setMaxRows(5); ResultSet rs = stmt.executeQuery("SELECT * FROM myLargeTable");