microsoft / ODBC-Specification

Microsoft ODBC Specification
Other
121 stars 40 forks source link

Should we support Type Parameters for CONVERT? #20

Open mikepizzo opened 8 years ago

mikepizzo commented 8 years ago

The current spec is unclear on how type parameters are passed to ODBC types in the CONVERT function. The assumption today is that calling CONVERT with SQL_LONGVARCHAR (for example) will be equivalent to casting it to longvarchar(max).

Should we add type parameters to Convert, i.e.;

SQL_BINARY[(L)] SQL_LONGVARCHAR[(L)] SQL_CHAR[(L)] SQL_NUMERIC[(P[,S])] SQL_DECIMAL[(P[,S])] SQL_TIME[(P)][WITH[OUT] TIME ZONE] SQL_FLOAT[(P)] SQL_TIMESTAMP[(P)] [WITH[OUT] TIME ZONE] SQL_INTERVAL_SECOND[(P)] SQL_VARBINARY[(L)] SQL_INTERVAL_DAY_TO_SECOND[(P)] SQL_VARCHAR[(L)] SQL_INTERVAL_HOUR_TO_SECOND[(P)] SQL_WCHAR[(L)] SQL_INTERVAL_MINUTE_TO_SECOND[(P)] SQL_WLONGVARCHAR[(L)] SQL_LONGVARBINARY[(L)] SQL_WVARCHAR[(L)]

What about interval leading precision; i.e., INTERVAL_[DAY|HOUR|MINUTE]TODAY|HOUR|MINUTE and INTERVAL_[DAY|HOUR|MINUTE]_TO_SECOND(L,P).

mikepizzo commented 6 years ago

Do 3.x drivers support type parameters or not? Assuming not, should we assume existing supported conversions don't have type parameters, and add GetInfo flags for the variants that include type parameters?