Details
-
Bug
-
Status: Open
-
Major
-
Resolution: Unresolved
-
2.1-incubating
-
None
-
None
Description
This is a follow-up on TRAFODION-306, pull request 584
https://github.com/apache/incubator-trafodion/pull/584#discussion_r6996530
As per the ODBC 3.0 specs, data type for date, time and timestamp should be 91,92,93 respectively. Recent change reverted it to data type expected by ODBC 2.0. Since this is the external facing API, we should conform to 3.x specs. If internal tests like coast are expecting ODBC 2.x then those tests should be modified.
" In ODBC 3.x, the identifiers for date, time, and timestamp SQL data types have changed from SQL_DATE,
SQL_TIME, and SQL_TIMESTAMP (with instances of #define in the header file of 9, 10, and 11) to SQL_TYPE_DATE,
SQL_TYPE_TIME, and SQL_TYPE_TIMESTAMP (with instances of #define in the header file of 91, 92, and 93),
respectively. The corresponding C type identifiers have changed from SQL_C_DATE, SQL_C_TIME, and
SQL_C_TIMESTAMP to SQL_C_TYPE_DATE, SQL_C_TYPE_TIME, and SQL_C_TYPE_TIMESTAMP, respectively.
The column size and decimal digits returned for the SQL datetime data types in ODBC 3.x are the same as the
precision and scale returned for them in ODBC 2.x. These values are different than the values in the
SQL_DESC_PRECISION and SQL_DESC_SCALE descriptor fields. (For more information, see Column Size, Decimal
Digits, Transfer Octet Length, and Display Size.)
These changes affect SQLDescribeCol, SQLDescribeParam, and SQLColAttribute; SQLBindCol,
SQLBindParameter, and SQLGetData; and SQLColumns, SQLGetTypeInfo, SQLProcedureColumns,
SQLStatistics, and SQLSpecialColumns.
"
Attachments
Issue Links
- is a parent of
-
TRAFODION-306 LP Bug: 1323868 - ODBC SQLGetTypeInfo api - all datatypes being returned as BIGINT
- Closed
- links to