Delimited Identifiers

From InterBase

Go Up to Features and Dialects


To increase compliance with the SQL 92 standard, InterBase 6 and later introduces delimited identifiers. An identifier is the name of any database object; for instance a table, a column, or a trigger. A delimited identifier is an identifier that is enclosed in double quotes. Because the quotes delimit the boundaries of the name, the possibilities for object names are greatly expanded from previous versions of InterBase. Object names can now:

  • mimic keywords
  • include spaces (except trailing spaces)
  • be case sensitive

How Double Quotes have Changed

Up to and including version 5, InterBase allowed the use of either single or double quotes around string constants. The concept of delimited identifiers did not exist. Beginning with InterBase 6 (dialect 3), anything in single quotes is interpreted as a string constant and anything in double quotes is interpreted as a delimited identifier. Here is the summary:

  • In all versions of InterBase, anything inside single quotes is treated as a string constant.
  • In InterBase version 5 and older, anything within double quotes is treated as a string constant, because those versions do not have the concept of a delimited identifier.
  • Version 6 dialect 1 is a transition mode that behaves like older versions of InterBase with respect to quote marks: it interprets strings within either single or double quotes as string constants.
  • Beginning with version 6 dialect 3, InterBase interprets anything inside double quotes as a delimited identifier. Anything inside single quotes is interpreted as a string constant.
  • When InterBase servers version 6 or later detect that the client is dialect 1, they permit client DML (data manipulation) statements to contain double quotes and they correctly handle these as string constants. However, they do not permit double quotes in client DDL (data definition) statements because that metadata would not be allowed in dialect 3. Version 6 servers all insist that string constants be delimited with single quotes when clients create new metadata.

See Also

Advance To: