LoslegenKostenlos starten

Umwandeln von Typen mittels USING

Wenn du nicht zu viel Platz für eine bestimmte varchar-Spalte reservieren willst, kannst du die Werte vor der Umwandlung abschneiden.

Dazu kannst du die folgende Syntax verwenden:

ALTER TABLE table_name
ALTER COLUMN column_name
TYPE varchar(x)
USING SUBSTRING(column_name FROM 1 FOR x)

Erläuterung: Da du nur x Zeichen für column_name reservieren willst, musst du von jedem Wert einen SUBSTRING behalten, also die ersten x Zeichen, und den Rest verwerfen. Auf diese Weise entsprechen die Werte den Anforderungen von varchar(x).

Diese Übung ist Teil des Kurses

<Kurs>Einführung in relationale Datenbanken in SQL</Kurs>
Kurs ansehen

Übungsanweisungen

  • Führe den Beispielcode unverändert aus und beachte den Fehler.
  • Verwende nun SUBSTRING(), um firstname auf 16 Zeichen zu verkürzen, damit der Typ in varchar(16) geändert werden kann.

Interaktive praktische Übung

Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.

-- Convert the values in firstname to a max. of 16 characters
ALTER TABLE professors 
ALTER COLUMN firstname 
TYPE varchar(16)
Code bearbeiten und ausführen