A literal is an explicit numeric, character, string, or Boolean value not represented by an identifier. The numeric literal 135 and the string literal 'hello world' are examples.


numeric_literal ::=

Description of the illustration numeric_literal.gif

integer_literal ::=

Description of the illustration integer_literal.gif

real_number_literal ::=

Description of the illustration real_number_literal.gif

character_literal ::=

Description of the illustration character_literal.gif

string_literal ::=

Description of the illustration string_literal.gif

boolean_literal ::=

Description of the illustration boolean_literal.gif

Keyword and Parameter Descriptions


A member of the PL/SQL character set. For more information, see Character Sets and Lexical Units.


One of the numerals 0 .. 9.


A predefined Boolean value.

Usage Notes

Integer and real numeric literals can be used in arithmetic expressions. Numeric literals must be separated by punctuation. Spaces can be used in addition to the punctuation. For more information, see Numeric Literals.

A character literal is an individual character enclosed by single quotes (apostrophes). Character literals include all the printable characters in the PL/SQL character set: letters, numerals, spaces, and special symbols. PL/SQL is case sensitive within character literals. For example, PL/SQL considers the literals 'Q' and 'q' to be different. For more information, see Character Literals.

A string literal is a sequence of zero or more characters enclosed by single quotes. The null string ('') contains zero characters. A string literal can hold up to 32,767 characters. PL/SQL is case sensitive within string literals. For example, PL/SQL considers the literals 'white' and 'White' to be different.

To represent an apostrophe within a string, enter two single quotes instead of one. For literals where doubling the quotes is inconvenient or hard to read, you can designate an escape character using the notation q'esc_char ... esc_char'. This escape character must not occur anywhere else inside the string.

Trailing blanks are significant within string literals, so 'abc' and 'abc ' are different. Trailing blanks in a string literal are not trimmed during PL/SQL processing, although they are trimmed if you insert that value into a table column of type CHAR. For more information, including NCHAR string literals, see String Literals.

The BOOLEAN values TRUE and FALSE cannot be inserted into a database column. For more information, see BOOLEAN Literals.


Related Topics