Metadata Names

From InterBase
Jump to: navigation, search

Go Up to Creating Metadata


Name Length

Metadata names such as table, column, and domain names can be 68 bytes in length: 67 bytes plus a NULL terminator. In earlier versions of InterBase, metadata names were restricted to 32 bytes. Therefore older clients cannot access database objects that have names longer than 32 bytes.

To enable clients to access the longer metadata names, you must set the version field in the XSQLDA structure to SQLDA_CURRENT_VERSION, which is defined in ibase.h. This version is configured to understand the longer names.


Delimited Identifiers (Metadata Names)

In InterBase dialect 1, object names are not case sensitive, cannot be keywords, and cannot contain spaces or non-ASCII characters.

In dialect 3, object names that are enclosed in double quotes are delimited identifiers. They are case sensitive, can be keywords, and can contain spaces and non-ASCII characters. For example:

SELECT “CodAR” FROM MyTable

is different from:

SELECT “CODAR” FROM MyTable

This behavior conforms to ANSI SQL semantics for delimited identifiers.

Advance To: