Die Syntax für ein alphanumerisches Literal ist wie folgt definiert:
alphanumerisches_literal ::=
{
'[
zeichen ...]'[
trenner ...'[
zeichen ...]']... |
X'[
hex hex ]...'[
trenner ...'[
hex hex ]...']...
}
hex ::= 0|1|2|3|4|5|6|7|8|9|a|b|c|d|e|f|A|B|C|D|E|F
zeichen
Beliebiges EBCDIC-Zeichen. Soll eine Zeichenkette ein Hochkomma (') enthalten, so müssen Sie das Hochkomma verdoppeln. Das verdoppelte Hochkomma gilt als ein Zeichen
(z.B. 'Zeichenketten variabler Länge sind vom Typ ''CHARACTER VARYING''')
.
hex
Eines der Sedezimalzeichen 0-9, A-F oder a-f
Der Datentyp eines alphanumerischen Literals ist CHAR(länge). länge ist die Anzahl der Zeichen bzw. der Paare von Hexa-Ziffern. Alphanumerische Literale dürfen maximal 256 Zeichen lang sein. Zeichenketten der Länge 0 sind als Literale erlaubt, obwohl es nicht möglich ist, einen Datentyp CHAR(0) zu definieren (siehe Abschnitt „Alphanumerische Datentypen und National-Datentypen"). Der Datentyp ist dann VARCHAR(0).
Die beiden Formen zeichen und hex vom alphanumerischen Literal können konkateniert werden wie z.B. bei „fünfzig“ ('f'||X'FD'||'nfzig'
) oder bei Konkatenation mit einem Spezial-Literal ('Benutzer:'||CURRENT_USER
).
„||“ muss als Operator für die Konkatenation verwendet werden.
trenner
Trenner, der zwei Teilketten voneinander trennt (siehe Abschnitt „Trenner"). Setzt sich ein alphanumerische Literal aus zwei oder mehreren Teilketten zusammen, müssen benachbarte Teilketten durch einen oder mehrere Trenner getrennt sein. Mindestens einer der Trenner muss ein Übergang zur nächsten Zeile sein.
Das Ergebnis eines aus Teilketten zusammengesetzten alphanumerischen Literals ist die Konkatenation der beteiligten Teilketten, ohne dass dafür der Operator für Konkatenation geschrieben werden muss.
Beispiel
Das folgende alphanumerische Literal ist aus drei Teilketten zusammengesetzt:
'Getrennt ' -- erste Teilkette 'von Tisch ' -- zweite Teilkette 'und Bett' -- dritte Teilkette
Das Ergebnis ist die Zeichenkette 'Getrennt von Tisch und Bett'.