Error message differences
Derby Server and Administration Guide
31
Other differences between updatable result sets in a server or embedded environment
can be found in the following table.
Table 9.
Comparison of updatable result sets features in server and embedded
environments
Feature
Embedded
Environment
Server Environment
updateBytes on CHAR,
VARCHAR, LONG VARCHAR
datatypes
Supported
Not supported
updateTime on TIMESTAMP
datatypes
Supported
Not supported
updateClob and updateBlob
Supported
Not supported
Error message differences
The Network Server reports only the first error or warning message if multiple errors or
warnings occur for a given statement. For example:
ij> create table ai (x int, y int generated always as identity
(increment by 200000000));
ij> insert into ai (x) values (1),(2),(3),(4),(5),(6),(7),
(8),(9),(10),(11),(12),(13),(14),(15),(16),(17),(18),(19);
The Network Server generates the following error message and appends the exception
message to the error:
ERROR 42Z24: Overflow occurred in identity for column 'Y' in table 'AI':
SQLSTATE: 22003: The resulting value is outside the range
for the data type INTEGER.
The Derby embedded driver, however, would generate two SQL exceptions:
ERROR 42Z24: Overflow occurred in identity for column 'Y' in table 'AI'.
ERROR 22003: The resulting value is outside the range for the data type
INTEGER.
This is because the network client driver reports only one SQLException or one
SQLWarning per statement.
User authentication differences
When running Derby in embedded mode or when using the Derby Network Server, you
can enable or disable server-side user authentication. However, when using the Network
Server, the default security mechanism (
CLEAR_TEXT_PASSWORD_SECURITY
) requires
that you supply both the user name and password.
In addition to the default user name and password security mechanism,
org.apache.derby.jdbc.ClientDataSource.CLEAR_TEXT_PASSWORD_SECURITY,
Derby Network Server supports the following security properties:
· UserID (org.apache.derby.jdbc.ClientDataSource.USER_ONLY_SECURITY)
When using this mechanism, you must specify only the
user
property. All other
mechanisms require you to specify both the user name and the password.
· Encrypted UserID and encrypted password (org.apache.derby.jdbc.ClientDataSource.ENCRYPTED_USER_AND_PASSWORD_SECURITY)
When using this mechanism, both password and user id are encrypted.