Using supported data types

Except for binary, OpenDB supports most data types. Since OpenDB uses the ODBC API to retrieve data from an ODBC database, the table below is in terms of ODBC data types. To determine whether a column in a ODBC database can be retrieved by OpenDB, the ODBC data type that is returned by the ODBC API function SQLDescribeCol is required.

The supporting data types for a few common ODBC databases are summarized in Using Supported Data Types.

Supported ODBC Data Types Unsupported ODBC Data Types
sql_bigint sql_binary
sql_bit sql_interval_day
sql_char sql_interval_day_to_hour
sql_date sql_interval_day_to_minute
sql_decimal sql_interval_day_to_second
sql-double sql_interval_hour
sql-float sql_interval_hour_to_minute
sql_integer sql_interval_hour_to_second
sql_longvarchar sql_interval_minute
sql_number sql_interval_minute_to_second
sql_real sql_interval_month
sql_smallint sql_interval_second
sql_time sql_interval_year
sql_timestamp sql_interval_year_to_month
sql_tinyint sql_longvarbinary
sql_unicode_char sql_type_null
sql_unicode_varchar  
sql_varchar  

When creating a new Super Q-pointer, it is best to start OpenDB with the debug flag so that columns with unsupported data types are easily identified.

Using data types involving date and time

For most data types involving dates and time, the ODBC data type sql_timestamp is used in the conversion. Thus, when using OpenDB to enter data that involves date and time, the ODBC format must be used:

yyyy-mm-ddhh:mm:ss

At this time, a Pick-formatted date (the number of days elapsed since December 31, 1967) can not be entered into a date field. See Supported data types for information on a few common ODBC databases.

Caching cuper Q-pointer information

The first time a Super Q-pointer is opened, the table and column information is processed and cached by OpenDB. Since the information is cached, subsequent operations on that Super Q-pointer are typically faster.

Caching of the Super Q-pointer information does not affect the underlying data found in the ODBC database. Only information about the table and its columns, such as data type, precision and scale is cached. The data found in the table is not cached.

Note: Due to caching, each time a Super Q-pointer is modified, the current D3 session must be logged off to flush the Super Q-pointer information from OpenDB.