# Differences between the embedded client and the network client driver

The following are known differences that exist between the Derby embedded driver and the network client driver.

There may be undocumented differences that have not yet been identified. Some differences with the network client may be changed in future releases to match the embedded driver functionality.

- Error messages and `SQLState`s can differ between the network client and embedded driver.
- Treatment of error situations encountered during batch processing with `java.sql.Statement`, `java.sql.PreparedStatement`, and `java.sql.CallableStatement` is different. With the embedded driver, processing stops when an error is encountered; with the network client driver, processing continues, but an appropriate value as defined in the `java.sql.Statement` API is returned in the resulting update count array.
- To use an encrypted user id and password, you need to have the IBM's Java Cryptography Extension (JCE) Version 1.2.1 or later.

Parent topic: Differences between running Derby in embedded mode and using the Network Server
Related concepts
Updatable result sets
Differences in JDBC methods
Differences using the Connection.setReadOnly method