# JDBC reference

Derby comes with a built-in JDBC driver.

That makes the JDBC API the only API for working with Derby databases. The driver is a native protocol all-Java driver (type number four of types defined by Sun).

This section provides reference information about Derby's implementation of the JDBC API and documents the way it conforms to the JDBC 2.0, 3.0, and 4.0 APIs.

See the Java DB Developer's Guide for task-oriented instructions on working with the driver.

This JDBC driver implements the standard JDBC interface defined by Sun. When invoked from an application running in the same JVM as Derby, the JDBC driver supports connections to a Derby database in embedded mode. No network transport is required to access the database. In client/server mode, the client application dispatches JDBC requests to the JDBC server over a network; the server, in turn, which runs in the same JVM as Derby, sends requests to Derby through the embedded JDBC driver.

The Derby JDBC implementation provides access to Derby databases and supplies all the required JDBC interfaces. Unimplemented aspects of the JDBC driver return an SQLException with a message stating "Feature not implemented" and an SQLState of XJZZZ. These unimplemented parts are for features not supported by Derby.

- Core JDBC java.sql classes, interfaces, and methods
- java.sql.Driver interface
- java.sql.DriverManager.getConnection method
- java.sql.Connection interface
- java.sql.DatabaseMetaData interface
- java.sql.Statement interface
- java.sql.CallableStatement interface
- java.sql.SQLException class
- java.sql.PreparedStatement interface
- java.sql.ResultSet interface
- java.sql.ResultSetMetaData interface
- java.sql.SQLWarning class
- java.sql.SQLXML interface
- Mapping of java.sql.Types to SQL types
  In Derby, the java.sql.Types are mapped to SQL data types
- JDBC 2.0 features
- java.sql.BatchUpdateException class
- JDBC Package for Connected Device Configuration/Foundation Profile (JSR169)
- JDBC 3.0 features
- JDBC 4.0-only features
- JDBC escape syntax