Identifiers

Applies to: check marked yes Databricks SQL check marked yes Databricks Runtime 10.2 and above

An identifier is a string used to identify a object such as a table, view, schema, or column. Databricks has regular identifiers and delimited identifiers, which are enclosed within backticks. All identifiers are case-insensitive.

Syntax

Regular identifiers

{ letter | digit | '_' } [ ... ]

Note

In Databricks Runtime, if spark.sql.ansi.enabled is set to true, you cannot use an ANSI SQL reserved keyword as an identifier. For details, see ANSI Compliance.

Delimited identifiers

`c [ ... ]`

Parameters

  • letter: Any letter from A-Z or a-z.

  • digit: Any numeral from 0 to 9.

  • c: Any character from the character set. Use ` to escape special characters (for example, `.` ).

Examples

-- This CREATE TABLE fails because of the illegal identifier name a.b
CREATE TABLE test (a.b int);
no viable alternative at input 'CREATE TABLE test (a.'(line 1, pos 20)

-- This CREATE TABLE works
CREATE TABLE test (`a.b` int);

-- This CREATE TABLE fails because the special character ` is not escaped
CREATE TABLE test1 (`a`b` int);
no viable alternative at input 'CREATE TABLE test (`a`b`'(line 1, pos 23)

-- This CREATE TABLE works
CREATE TABLE test (`a``b` int);