With more and more traditional c-tree users leveraging the power of FairCom DB SQL, FairCom has labored to keep this transition as easy as possible. While we strive for the utmost in compatibility, we occasionally find areas where it is possible to encounter unexpected situations. The c-tree ODBC and FairCom DB ODBC drivers are both fully standards compliant, however, subtle differences do exist. We have summarized these differences here.
All table names returned by the FairCom DB ODBC Driver are as “owner.tablename” without regard to the server configuration option SQL_OPTION OWNER_FILE_NAMES.
The SQL_OPTION OWNER_FILE_NAMES only affects the name of the table created on disk. It determines whether the owner name is prepended to the physical table name or not. Table names returned by the ODBC driver are not affected by this FairCom DB SQL option.
Using the c-tree ODBC driver it was common practice to represent the symbolic table name in uppercase. You can use uppercase table names in FairCom DB SQL as long as you do not wrap them in double quotes.
Another option is to use the SQL_OPTION DB_CASE_INSENSITIVE keyword before creating the template database and the FairCom DB SQL databases.
Hidden Fields: The c-tree drivers will not display a field whose field name given in the DODA begins with an underscore: “_”. Hiding fields that are used to form keys is not recommended and may cause problems.
Read-Only Fields: The c-tree drivers will display but will not allow updates on a field whose field name given in the DODA begins with the "legacy read only" field identifier, a right square bracket: “]”.
FairCom DB SQL import does not handle this field identifier. This character is imported as part of the field name unless the -k option (skip fields not complying with conventional identifiers rules) is specified on import. However, this is an unconventional character and must be double quoted.