Previous Page | Next Page

SAS/ACCESS Interface to ODBC

Naming Conventions for ODBC

For general information about this feature, see SAS Names and Support for DBMS Names.

Because ODBC is an application programming interface (API) rather than a database, table names and column names are determined at run time. Since SAS 7, table names and column names can be up to 32 characters long. SAS/ACCESS Interface to ODBC supports table names and column names that contain up to 32 characters. If DBMS column names are longer than 32 characters, SAS truncates them to 32 characters. If truncating a column name would result in identical names, SAS generates a unique name by replacing the last character with a number. DBMS table names must be 32 characters or less because SAS does not truncate a longer name. If you already have a table name that is greater than 32 characters, it is recommended that you create a table view.

The PRESERVE_COL_NAMES= and PRESERVE_TAB_NAMES= options determine how SAS/ACCESS Interface to ODBC handles case sensitivity, spaces, and special characters. The default value for both options is YES for Microsoft Access, Microsoft Excel, and Microsoft SQL Server and NO for all others. For information about these options, see Overview of the LIBNAME Statement for Relational Databases.

This example specifies Sybase as the DBMS.

libname mydblib odbc user=TESTUSER password=testpass 
        database=sybase;

data mydblib.a;
   x=1;
   y=2;
run;

Sybase is generally case sensitive. This example would therefore produce a Sybase table named a with columns named x and y.

If the DBMS being accessed was Oracle, which is not case sensitive, the example would produce an Oracle table named A and columns named X and Y. The object names would be normalized to uppercase.

Previous Page | Next Page | Top of Page