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.
The Microsoft documentation for the ODBC API function SQLGetInfo:
http://msdn.microsoft.com/en-us/library/ms711681%28VS.85%29.aspx(Link opens in a new window)
A sample header file,
sqlext.h
, for the ODBC API identifier values used with SQLGetInfo:http://cpansearch.perl.org/src/MIMER/DBD-Mimer-1.00/sqlext.h(Link opens in a new window)
SQLGetInfo long-integer values
SQL_ODBC_INTERFACE_CONFORMANCE | Currently unused. |
SQL_SQL_CONFORMANCE | Integer 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_USAGE | Integer bitmask. Defines the SQL statements in which a catalogue identifier can be used. |
SQL_SCHEMA_USAGE | Integer bitmask. Defines the SQL statements in which a schema identifier can be used. |
SQL_AGGREGATE_FUNCTIONS | Integer bitmask. Defines which standard SQL aggregation forms are supported. |
SQL_NUMERIC_FUNCTIONS | Integer bitmask. Defines which SQL scalar numeric functions are supported. |
SQL_STRING_FUNCTIONS | Integer bitmask. Defines which SQL scalar string functions are supported. |
SQL_TIMEDATE_FUNCTIONS | Integer bitmask. Defines which SQL scalar date / time functions are supported. |
SQL_TIMEDATE_ADD_INTERVALS | Integer bitmask. Defines which date / time intervals are supported with the TIMESTAMPADD scalar function. |
SQL_TIMEDATE_DIFF_INTERVALS | Integer bitmask. Defines which date / time intervals are supported with the TIMESTAMPDIFF scalar function. |
SQL_DATETIME_LITERALS | Integer bitmask. Defines which SQL-92 literals are supported for representing DATE / TIME constants and INTERVALs. |
SQL_SYSTEM_FUNCTIONS | Integer bitmask. Defines support for special SQL system scalar functions: IFNULL, DBNAME and USERNAME. |
SQL_SQL92_VALUE_EXPRESSIONS | Integer bitmask. Defines which logical functions are supported for testing and manipulating values: CASE, CAST and NULLIF. |
SQL_SQL92_NUMERIC_VALUE_FUNCTIONS | Integer 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_FUNCTIONS | Integer bitmask. Defines which string manipulation functions are supported. |
SQL_SQL92_DATETIME_FUNCTIONS | Integer bitmask. Defines which date / time manipulation functions are supported for determining the current date, time or timestamp. |
SQL_OJ_CAPABILITIES | Integer bitmask. Defines which type of outer joins are supported. |
SQL_SQL92_RELATIONAL_JOIN_OPERATORS | Integer bitmask. Defines which types of JOIN operators are supported, e.g. INNER, OUTER. |
SQL_SQL92_PREDICATES | Integer bitmask. Defines which predicates are supported for logical tests of values, e.g. IS NULL, LIKE, IN. |
SQL_CONVERT_FUNCTIONS | Integer bitmask. Defines which ODBC scalar functions are supported for CASTing or CONVERTing one data type to another. |
SQL_CONVERT_TINYINT | Integer bitmask. Determines which other data types that this named type can be converted to using the ODBC scalar function CONVERT. |
SQL_CONVERT_SMALLINT | Integer bitmask. Same as above. |
SQL_CONVERT_INTEGER | Integer bitmask. Same as above. |
SQL_CONVERT_BIGINT | Integer bitmask. Same as above. |
SQL_CONVERT_REAL | Integer bitmask. Same as above. |
SQL_CONVERT_FLOAT | Integer bitmask. Same as above. |
SQL_CONVERT_DOUBLE | Integer bitmask. Same as above. |
SQL_CONVERT_CHAR | Integer bitmask. Same as above. |
SQL_CONVERT_VARCHAR | Integer bitmask. Same as above. |
SQL_CONVERT_LONGVARCHAR | Integer bitmask. Same as above. |
SQL_CONVERT_DECIMAL | Integer bitmask. Same as above. |
SQL_CONVERT_NUMERIC | Integer bitmask. Same as above. |
SQL_CONVERT_BIT | Integer bitmask. Same as above. |
SQL_CONVERT_GUID | Integer bitmask. Same as above. |
SQL_CONVERT_BINARY | Integer bitmask. Same as above. |
SQL_CONVERT_VARBINARY | Integer bitmask. Same as above. |
SQL_CONVERT_LONGVARBINARY | Integer bitmask. Same as above. |
SQL_CONVERT_DATE | Integer bitmask. Same as above. |
SQL_CONVERT_TIME | Integer bitmask. Same as above. |
SQL_CONVERT_TIMESTAMP | Integer bitmask. Same as above. |
SQL_CONVERT_INTERVAL_DAY_TIME | Integer bitmask. Same as above. |
SQLGetInfo short-integer values
SQL_CURSOR_COMMIT_BEHAVIOR | Short integer value. “0” if the prepared statements are closed upon commit for the data source. |
SQL_MAX_IDENTIFIER_LEN | Integer 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_CAPABLE | Short integer value. “0” if the data source does not support the transaction. |
SQL_QUOTED_IDENTIFIER_CASE | Integer bitmask. |
SQLGetInfo string values
SQL_COLUMN_ALIAS | Boolean value. "Y" if the data source supports using aliases for columns listed in the SELECT clause. |
SQL_IDENTIFIER_QUOTE_CHAR | String 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_SEPARATOR | Character 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_CHARACTERS | String value. Indicates the special characters which are allowed in identifier strings. |
SQL_CATALOGUE_TERM | String value. This is the descriptive term for a database catalogue, which appears in the Tableau connection dialog for this ODBC data source. |
SQL_SCHEMA_TERM | String value. This is the descriptive term for a database schema, which appears in the Tableau connection dialog for this ODBC data source. |
SQL_TABLE_TERM | String value. This is the descriptive term for a database table, which appears in the Tableau connection dialog for this ODBC data source. |
SQL_DRIVER_NAME | String value. This is the name of the database ODBC driver. |
SQL_DRIVER_VER | String value. This is the version number of the ODBC driver. |
SQL_DRIVER_ODBC_VER | String value. This is the version of the ODBC API which the driver supports. |
SQL_ODBC_VER | String value. This is the version of ODBC which the Windows ODBC Driver Manager supports. This should not need to be customised. |
SQL_DBMS_NAME | String value. This is the name of the database vendor. |
SQL_DBMS_VER | String value. This is the version of the database system. |
SQL_SERVER_NAME | String value. This is the named network address of the database server. |
SQL_USER_NAME | String 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.