Zusammenfassung: In diesem Tutorial lernen Sie den Oracle VARCHAR2-Datentyp kennen und erfahren, wie Sie ihn verwenden, um Spalten mit Zeichenfolgen variabler Länge zu definieren.

Einführung in den Oracle VARCHAR2-Datentyp

Um Zeichenfolgen variabler Länge zu speichern, verwenden Sie den Oracle VARCHAR2-Datentyp. Eine VARCHAR2-Spalte kann einen Wert zwischen 1 und 4000 Bytes speichern. Das bedeutet, dass Sie bei einem Ein-Byte-Zeichensatz bis zu 4000 Zeichen in einer VARCHAR2-Spalte speichern können.

Wenn Sie eine Tabelle mit einer VARCHAR2-Spalte erstellen, müssen Sie die maximale Zeichenfolgenlänge angeben, entweder in Bytes:

oder in Zeichen

Standardmäßig verwendet Oracle BYTE, wenn Sie nicht ausdrücklich BYTE oder CHAR nach max_size angeben. Mit anderen Worten, eine VARCHAR2(N)-Spalte kann bis zu N Bytes an Zeichen enthalten.

Wenn Sie eine Zeichenkette speichern, deren Größe die maximale Größe der VARCHAR2-Spalte überschreitet, gibt Oracle einen Fehler aus.

Wenn Sie zum Beispiel eine VARCHAR2-Spalte mit einer maximalen Größe von 20 definieren. In einem Einzelbyte-Zeichensatz können Sie bis zu 20 Zeichen speichern. Wenn Sie 21 Zeichen oder mehr speichern, gibt Oracle einen Fehler zurück.

Wenn Sie außerdem 10 Zeichen in einer VARCHAR2(20)-Spalte speichern, verwendet Oracle nur 10 Byte für die Speicherung, nicht 20 Byte. Daher hilft Ihnen die Verwendung des Datentyps VARCHAR2, den von der Tabelle verwendeten Speicherplatz zu sparen.

Beim Vergleich von VARCHAR2-Werten verwendet Oracle die nicht gepolsterte Vergleichssemantik.

Oracle VARCHAR2 max length

Seit Oracle Database 12c können Sie die maximale Größe von 32767 für den Datentyp VARCHAR2 angeben. Oracle verwendet den Parameter MAX_STRING_SIZE zur Steuerung der maximalen Größe. Wenn MAX_STRING_SIZE STANDARD ist, dann beträgt die maximale Größe für VARCHAR2 4000 Bytes. Wenn MAX_STRING_SIZE EXTENDED ist, beträgt die Größenbegrenzung für VARCHAR2 32767.

Um den Wert des Parameters MAX_STRING_SIZE zu ermitteln, verwenden Sie die folgende Abfrage:

Oder verwenden Sie die folgende Anweisung:

Oracle VARCHAR2-Beispiele

Die folgende Anweisung erstellt eine neue Tabelle mit dem Namen econtacts, um die Notfallkontakte der Mitarbeiter zu speichern.

Die Tabelle econtacts hat drei VARCHAR2-Spalten: first_name, last_name und phone.

Die folgende Anweisung fügt eine neue Zeile in die Tabelle econtacts ein:

Es funktioniert wie erwartet, da die Eingabedaten die maximale Größe der Spalte VARCHAR2 nicht überschreiten.

Die folgende Anweisung kann jedoch nicht eingefügt werden:

Da der eingegebene Vorname die maximale Länge der first_name-Spalte überschreitet, gibt Oracle die folgende Fehlermeldung aus:

In diesem Tutorial haben Sie etwas über den Oracle VARCHAR2 gelernt und darüber, wie man den VARCHAR2-Datentyp verwendet, um Zeichenkettenspalten mit variabler Länge in einer Tabelle zu definieren.

  • War dieses Tutorial hilfreich?
  • JaNein

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.