GeeksforGeeks

PostgreSQL suportă un tip de date de caractere numit VARCHAR. Acest tip de date este utilizat pentru a stoca caractere de lungime limitată. El este reprezentat ca varchar(n) în PostgreSQL, unde n reprezintă limita de lungime a caracterelor. Dacă n nu este specificat, valoarea implicită este varchar , care are o lungime nelimitată. Orice încercare de a stoca un șir de caractere mai lung în coloana definită cu varchar(n) duce la emiterea unei erori de către PostgreSQL. Cu toate acestea, o excepție este aceea că, în cazul în care caracterele în exces sunt toate spații, PostgreSQL va trunchia spațiile la lungimea maximă și va stoca șirul. Singurul avantaj al specificării specificatorului de lungime pentru tipul de date varchar este că PostgreSQL va verifica și va emite o eroare în cazul în care încercați să introduceți un șir mai lung în coloana varchar(n).

Syntax: variable_name VARCHAR(n)

Exemplu :
Să creăm o nouă tabelă (să zicem, char_test) pentru demonstrație folosind comenzile de mai jos:

CREATE TABLE varchar_test ( id serial PRIMARY KEY, x VARCHAR (1), y VARCHAR(10));

Acum să inserăm un nou rând în tabela char_test folosind comanda de mai jos:

INSERT INTO varchar_test (x, y)VALUES ( 'Geeks', 'This is a test for char' );

În acest stadiu PostgreSQL va genera o eroare deoarece tipul de date al coloanei x este char(1) și am încercat să inserăm un șir de trei caractere în această coloană, așa cum se arată mai jos:

ERROR: value too long for type character varying(1)

Acum, haideți să o corectăm.

INSERT INTO varchar_test (x, y)VALUES ( 'G', 'This is a test for char' );

Acum, vom primi aceeași eroare pentru coloana y deoarece numărul de caractere introduse este mai mare de 10, așa cum se arată mai jos:

ERROR: value too long for type character varying(10)

Să o corectăm și pe aceasta.

INSERT INTO varchar_test (x, y)VALUES ( 'G', 'hello Geek' );

Acum că am reușit să atribuim cu succes valorile tipului de date caracter, verificăm acest lucru prin rularea comenzii de mai jos:

SELECT * FROM varchar_test;

Output:

Articolul Tags :

Lasă un răspuns

Adresa ta de email nu va fi publicată.