New Features (DAS M3)
DAS uses overqualified update by default
Currently in the DAS we either use a user-defined version column or do not use any concurrency control. We have enough information to build an overqualified update in cases where a version column is not defined. For example, if a field "name" is changed from "Bob" to "John", we would generate a query such as:
UPDATE CUSTOMER SET NAME = 'John' WHERE ID = 1 AND NAME = 'Bob'
If the statement does not update any rows in the database, the DAS will throw a concurrency control exception.
This scheme will not work in case of LONG VARCHAR, BLOB, or CLOB columns, so an exception should be thrown in that case indicating that a version column must be defined.
DAS Configuration supports ConnectionInfo for J2SE environment
So far the DAS allowed users to specify a JDBC Connection for the DAS to utilize by either providing a JDBC Connection explicitly or providing a JNDI name in the config file. Now DAS supports DriverManager info to be provided to allow similar, config-based set up, in a J2SE environment.
Creation and initialization of database for DAS samples
So far, the DAS samples provided canned database with them. This feature is an useful utility which supports an external configuration based creation and initialization of database when sample is loaded for the first time. User can design the database schema using the external configuration.
DAS supports queries that reference tables in multiple schema
So far DAS did not support multiple database schema. This feature allows DAS to execute all commands for tables in different schema.
Advanced DAS features Demo
This is not a few feature in itself but a new sample demonstrating multiple advanced features in DAS like optimistic concurrency control, column converter, result set shape...New features will keep getting added to this in future.