ÎncepețiÎncepe gratuit

Convertirea tipurilor USING o funcție

Dacă nu vrei să rezervi prea mult spațiu pentru o anumită coloană de tip varchar, poți trunchia valorile înainte de a-i converti tipul.

Pentru aceasta, poți folosi următoarea sintaxă:

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

Citește-o astfel: deoarece vrei să rezervi doar x caractere pentru column_name, trebuie să păstrezi un SUBSTRING din fiecare valoare, adică primele x caractere ale acesteia, și să elimini restul. Astfel, valorile vor respecta cerința varchar(x).

Acest exercițiu face parte din cursul

Introducere în baze de date relaționale în SQL

Vezi cursul

Instrucțiuni pentru exercițiu

  • Rulează codul exemplu ca atare și reține eroarea apărută.
  • Acum folosește SUBSTRING() pentru a reduce firstname la 16 caractere, astfel încât tipul său să poată fi modificat la varchar(16).

Exercițiu interactiv practic

Încearcă acest exercițiu completând acest cod de exemplu.

-- Convert the values in firstname to a max. of 16 characters
ALTER TABLE professors 
ALTER COLUMN firstname 
TYPE varchar(16)
Editează și rulează codul