ODBC/SQL Customisations Reference

You can set the following customisations in the Tableau Datasource Customisation (TDC) file to define parts of the ODBC and SQL standards that the ODBC driver supports.

Documentation resources for SQLGetInfo

The names of these customisations come from the identifiers used as parameters to SQLGetInfo.

For more information, see the MSDN documentation and the source code header file sqlext.h for the numeric and bit-mask values associated with each customisation.

SQLGetInfo long-integer values

SQL_SQL_CONFORMANCEInteger bitmask. Defines the level which the data source conforms to the SQL standard: '1' for entry-level SQL-92 conformance, '2' for FIPS 127-2 transitional, '4' for Intermediate and '8' for Full conformance.
SQL_CATALOGUE_USAGEInteger bitmask. Defines the SQL statements in which a catalogue identifier can be used.
SQL_SCHEMA_USAGEInteger bitmask. Defines the SQL statements in which a schema identifier can be used.
SQL_AGGREGATE_FUNCTIONSInteger bitmask. Defines which standard SQL aggregation forms are supported.
SQL_NUMERIC_FUNCTIONSInteger bitmask. Defines which SQL scalar numeric functions are supported.
SQL_STRING_FUNCTIONSInteger bitmask. Defines which SQL scalar string functions are supported.
SQL_TIMEDATE_FUNCTIONSInteger bitmask. Defines which SQL scalar date / time functions are supported.
SQL_TIMEDATE_ADD_INTERVALSInteger bitmask. Defines which date / time intervals are supported with the TIMESTAMPADD scalar function.
SQL_TIMEDATE_DIFF_INTERVALSInteger bitmask. Defines which date / time intervals are supported with the TIMESTAMPDIFF scalar function.
SQL_DATETIME_LITERALSInteger bitmask. Defines which SQL-92 literals are supported for representing DATE / TIME constants and INTERVALs.
SQL_SYSTEM_FUNCTIONSInteger bitmask. Defines support for special SQL system scalar functions: IFNULL, DBNAME and USERNAME.
SQL_SQL92_VALUE_EXPRESSIONSInteger bitmask. Defines which logical functions are supported for testing and manipulating values: CASE, CAST and NULLIF.
SQL_SQL92_NUMERIC_VALUE_FUNCTIONSInteger bitmask. Defines which functions can produce a numeric value from non-numeric data, including: EXTRACT (for date / time part extraction), CHAR_LENGTH, CHARACTER_LENGTH and POSITION(.. IN ..).
SQL_SQL92_STRING_FUNCTIONSInteger bitmask. Defines which string manipulation functions are supported.
SQL_SQL92_DATETIME_FUNCTIONSInteger bitmask. Defines which date / time manipulation functions are supported for determining the current date, time or timestamp.
SQL_OJ_CAPABILITIESInteger bitmask. Defines which type of outer joins are supported.
SQL_SQL92_RELATIONAL_JOIN_OPERATORSInteger bitmask. Defines which types of JOIN operators are supported, e.g. INNER, OUTER.
SQL_SQL92_PREDICATESInteger bitmask. Defines which predicates are supported for logical tests of values, e.g. IS NULL, LIKE, IN.
SQL_CONVERT_FUNCTIONSInteger bitmask. Defines which ODBC scalar functions are supported for CASTing or CONVERTing one data type to another.
SQL_CONVERT_TINYINTInteger bitmask. Determines which other data types that this named type can be converted to using the ODBC scalar function CONVERT.
SQL_CONVERT_SMALLINTInteger bitmask. Same as above.
SQL_CONVERT_INTEGERInteger bitmask. Same as above.
SQL_CONVERT_BIGINTInteger bitmask. Same as above.
SQL_CONVERT_REALInteger bitmask. Same as above.
SQL_CONVERT_FLOATInteger bitmask. Same as above.
SQL_CONVERT_DOUBLEInteger bitmask. Same as above.
SQL_CONVERT_CHARInteger bitmask. Same as above.
SQL_CONVERT_VARCHARInteger bitmask. Same as above.
SQL_CONVERT_LONGVARCHARInteger bitmask. Same as above.
SQL_CONVERT_DECIMALInteger bitmask. Same as above.
SQL_CONVERT_NUMERICInteger bitmask. Same as above.
SQL_CONVERT_BITInteger bitmask. Same as above.
SQL_CONVERT_GUIDInteger bitmask. Same as above.
SQL_CONVERT_BINARYInteger bitmask. Same as above.
SQL_CONVERT_VARBINARYInteger bitmask. Same as above.
SQL_CONVERT_LONGVARBINARYInteger bitmask. Same as above.
SQL_CONVERT_DATEInteger bitmask. Same as above.
SQL_CONVERT_TIMEInteger bitmask. Same as above.
SQL_CONVERT_TIMESTAMPInteger bitmask. Same as above.
SQL_CONVERT_INTERVAL_DAY_TIMEInteger bitmask. Same as above.

SQLGetInfo short-integer values

SQL_CURSOR_COMMIT_BEHAVIORShort integer value. “0” if the prepared statements are closed upon commit for the data source.
SQL_MAX_IDENTIFIER_LENInteger value. Defines the maximum number of characters that can be used in an identifier. Tableau leaves room for one extra character as the string terminator.
SQL_TXN_CAPABLEShort integer value. “0” if the data source does not support the transaction.

SQLGetInfo string values

SQL_COLUMN_ALIASBoolean value. "Y" if the data source supports using aliases for columns listed in the SELECT clause.
SQL_IDENTIFIER_QUOTE_CHARString value. Indicates the character which can be used for quoting identifiers. Because the connection customisation is an XML document, any entities must properly be encoded. For example, double-quotes will be '"'. Additionally this character is assumed to work as the opening and closing character around identifiers, so some data sources which require '[ ]' to enclose identifiers will not be supported.
SQL_CATALOGUE_NAME_SEPARATORCharacter value. Indicates the separator character to use between identifiers when qualifying them with a catalogue, schema or table name. This is typically the period character.
SQL_SPECIAL_CHARACTERSString value. Indicates the special characters which are allowed in identifier strings.
SQL_CATALOGUE_TERMString value. This is the descriptive term for a database catalogue, which appears in the Tableau connection dialog for this ODBC data source.
SQL_SCHEMA_TERMString value. This is the descriptive term for a database schema, which appears in the Tableau connection dialog for this ODBC data source.
SQL_TABLE_TERMString value. This is the descriptive term for a database table, which appears in the Tableau connection dialog for this ODBC data source.
SQL_DRIVER_NAMEString value. This is the name of the database ODBC driver.
SQL_DRIVER_VERString value. This is the version number of the ODBC driver.
SQL_DRIVER_ODBC_VERString value. This is the version of the ODBC API which the driver supports.
SQL_ODBC_VERString value. This is the version of ODBC which the Windows ODBC Driver Manager supports. This should not need to be customised.
SQL_DBMS_NAMEString value. This is the name of the database vendor.
SQL_DBMS_VERString value. This is the version of the database system.
SQL_SERVER_NAMEString value. This is the named network address of the database server.
SQL_USER_NAMEString value. This is the name of the currently authenticated user.

See also

Other Databases (ODBC) – Describes how to connect to your data using the ODBC connector.

Tableau and ODBC – Provides background information about ODBC, describes how Tableau determines the functionality of an ODBC driver and lists frequently asked questions.

Customise and Tune a Connection – Describes customise connection information for improved functionality and performance.

Tableau Capability Customisations Reference – Lists customisations you can use to define which Tableau capabilities are supported by the data source.

Thanks for your feedback!Your feedback has been successfully submitted. Thank you!