The official websie (http://db.apache.org/derby/) has straightford description. I just try to highlight some features:
check out the Quick Start page if you want to know more.
I will give my experience on check the query plan, runtime statistic, which is very useful to tune the performance.
Query Plan
To show the query plan, first create file named “derby.properties ” under derby “lib” directory, and put following lines:
derby.language.logQueryPlan=true
derby.optimizer.noTimeout=true
You must manully create the file! Then start derby ij command line [1], after run the query, the query plan is recorded in the “derby.log” file.The log will show you the detail on how the query engine analysis the user's query and optimize the query. You can find the the final query sequence and whether index is used or not and which one.
Runtime Statictic
But you can not get the real runtime for the query just display the query plan. Here is some way to show it:
In ij command
Directly run java command
java -cp .;derby.jar;derbytools.jar java org.apache.derby.tools.ij my.sql > myoutput.txt
This will run a sql file and dump the result out to a file. Here is a sample "my.sql" file:
Note: I call a usre-defined function named "myED" in the script.
Using Java
Reference:
[1]http://db.apache.org/derby/integrate/plugin_help/ij_toc.html
[2]http://db.apache.org/derby/docs/dev/tools/ttoolsij98878.html
[3]http://db.apache.org/derby/docs/dev/tools/ttoolsij98878.html
[4]https://www.ibm.com/developerworks/forums/thread.jspa?threadID=122245&tstart=0&messageID=13833605
[5]http://home.online.no/~olmsan/publications/pres/javaone07/JavaDbJavaOne07.pdf