About Apache Derby
The Apache Derby package that is bundled with the application server is backed by full IBM® Quality Assurance (QA).

Unlike versions 5.1.60x and earlier, Apache Derby is a pure Java™ database server. The Apache Derby code base, which the open source community calls Derby, is a product of the Apache Software Foundation (ASF) open source relational database project. Apache Derby includes the Derby base code without any modification to the underlying source code. You can investigate more incompatibilities about Derby code at the Apache Derby website.
Note: Earlier versions of Apache Derby cannot conduct
two phase-commit transactions over the Network Server framework, but
later versions of the Derby Client JDBC driver provides Apache Derby
with support for XA transactions. Only the Network Server framework
provides support for multiple Java virtual machines (JVMs), such as application servers, to access
Apache Derby.
Apache Derby is equipped with the following .bat/sh tools:
- sysinfo: displays database version information
- ij: manipulates the database instances. When you run the ij tool,
surround the dbname by double quotation marks ("") if it includes
the full path name; for example:
This is '"" ' without spaces.ij> connect '"c:\temp;create=true"'
- dblook: dumps DDL information
- networkServerControl: controls the networkServer process (can be used for functions such as ping and trace)
- startNetworkServer: starts the networkServer process
- stopNetworkServer: stops the networkServer process
Attention: If you use non-English characters in your
Derby database name, you need to update the ij script to specify the
file encoding property to the JVM: -Dfile.encoding=XXXXXX, where XXXXXX
is the encoding used to create the non-English characters.