Closed mikepizzo closed 6 years ago
Proposal: drivers use SQL_DESC_INDICATOR_PTR to denote that a data-at-fetch column contains a null value.
For consistency (and performance), the driver should always use the SQL_DESC_INDICATOR_PTR for scalar as well as structured/collection valued data-at-execute columns.
Does SQLGetNestedColumn return null? Do we add an null indicator output argument to SQLGetNestedColumn? Does the driver just fill in SQL_NULL for the SQL_DESC_INDICATOR_PTR and not return DATA_AVAILABLE? What about for scalar data-at-execute columns? Does the driver indicate nullability in SQL_DESC_INDICATOR_PTR, or by returning a null indicator when the client calls SQLGetData in the DATA_AVAILABLE state? Just setting the null indicator is more performant, but would it ever require the driver to unnecessarily cache in order to peek into the value?