ADBA feedback

Douglas Surber douglas.surber at oracle.com
Tue May 1 14:11:49 UTC 2018


We are trying to avoid anything that requires the implementation to scan the SQL. The goal is for an implementation to use the info provided by ADBA calls to create network packets. Since each vendor’s network protocol is different, the more ADBA specifies how the SQL and other user provided info is interpreted the more likely there will be a mismatch between ADBA and the network protocol.

Another reason I am reluctant to require both indexed and named columns is that some databases may not have the info to support both. Same for parameters.

Referring to Lukas’s most recent comments, most frameworks that sit on top of JDBC have a vendor plug-in that handles the differences between databases and drivers. I expect the same to be true for ADBA. We want the overall architecture of ADBA code to be the same for each database so that frameworks can keep that logic in common. The details of database specific SQL, column ids and parameter ids would be in the database plug-in. Rather than require the ADBA implementation to translate from some “ADBA SQL” to the database SQL (and ids) we think it is better that the framework or programmer generate the database specific form in the first place.

Douglas

> On May 1, 2018, at 4:37 AM, Mark Rotteveel <mark at lawinegevaar.nl> wrote:
> 
> On 30-4-2018 18:25, Douglas Surber wrote:
>> If there are several similar columns in sequence, then an off-by-one error may be difficult to detect. The redundant specification of the column makes it easier to detect such errors. While it allows runtime detection of errors, it doesn’t eliminate column counting and index shifting.
>> With respect to case, I’d say the spec should be silent. Vendors can do whatever is appropriate for their database. For example Oracle Database would likely ignore case but would support case-sensitive double quoted identifiers, “\”lower case identifier with spaces\”’.
> 
> I would really prefer if ADBA uses the same rules as JDBC, instead of just making this a free-for-all which will only lead to confusion and mismatches in expectations between drivers. Consistency is important.
> 
> Mark
> 
> -- 
> Mark Rotteveel



More information about the jdbc-spec-discuss mailing list