[+ | -]{integer | real_number}
integer ::=
digit[digit]...
real_number ::=
{ integer[.integer] | integer. | .integer}[{E | e}[+ | -]integer]
character_literal ::=
{'character' | ''''}
string_literal ::=
'{character[character]... | ''['']...}'
boolean_literal ::=
{TRUE | FALSE | NULL}
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. So, for example, PL/SQL considers the literals 'Q' and 'q' to be different.
A string literal is a sequence of zero or more characters enclosed by single quotes. The null string ('') contains zero characters. To represent an apostrophe within a string, write two single quotes. PL/SQL is case sensitive within string literals. So, for example, PL/SQL considers the literals 'white' and 'White' to be different.
Also, trailing blanks are significant within string literals, so 'White' and 'White ' are different. How a string literal compares to a variable does not depend on the variable; trailing blanks in a literal are never trimmed.
Unlike the non-value NULL, the Boolean values TRUE and FALSE cannot be inserted into a database column.
25 6.34 7E2 25e-03 .1 1. +17 -4.4
Several examples of character literals follow:
'H' '&' ' ' '9' ']' 'g'
A few examples of string literals follow:
'$5,000' '02-AUG-87' 'Don''t leave without saving your work.'