
Brian Braatz wrote:
I just added
" 5) Does not require the usage of RTTI
6) Allows for the user of the library to "plug in" thier own binding \ subscription system. (to support bound controls) "
It is also important to have a connection pooling and a statement pooling. Almost all modern databases support parse-bind-execute interface. Parsing of a statement can take a significant part of a total statement execution time. Having a pool of prepared statements increases performance twofold or threefold (at least with ORACLE). It is important to have a well-designed hierarchy of exceptions to map database-specific error codes because people will need to handle not just an error but either a constraint violation or a permission validation problem. Database independent sql generator would be an important part of a database framework because we will need to generate DDL statements with different syntax for different databases at least for regression testing purposes. Do not forget about the LOB data type :-) There are two major types of LOB data types: with a random access interface and with a sequential access interface. Supporting of a database-specific data types would be a plus. ORACLE users will ask you about ref-cursors anyway. Thanks. -- Sergey Sikorskiy