GeeksforGeeks

PostgreSQL understøtter en karakterdatatype kaldet VARCHAR. Denne datatype bruges til at gemme tegn af begrænset længde. Den repræsenteres som varchar(n) i PostgreSQL, hvor n repræsenterer grænsen for tegnenes længde. Hvis n ikke er angivet, er standardværdien varchar , som har ubegrænset længde. Ethvert forsøg på at gemme en længere streng i den kolonne, der er defineret med varchar(n), resulterer i, at PostgreSQL udsender en fejl. En undtagelse er dog, at hvis de overskydende tegn alle er mellemrum, vil PostgreSQL afkortes mellemrummene til den maksimale længde og gemme strengen. Den eneste fordel ved at angive længdeangivelsen for varchar-datatypen er, at PostgreSQL vil kontrollere og udstede en fejl, hvis du forsøger at indsætte en længere streng i varchar(n)-kolonnen.

Syntax: variable_name VARCHAR(n)

Eksempel :
Lad os oprette en ny tabel (lad os sige, char_test) til demonstrationen ved hjælp af nedenstående kommandoer:

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

Lad os nu indsætte en ny række i tabellen char_test ved hjælp af nedenstående kommando:

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

På dette stadie vil PostgreSQL give anledning til en fejl, da datatypen for kolonnen x er char(1), og vi forsøgte at indsætte en streng med tre tegn i denne kolonne som vist nedenfor:

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

Så lad os nu rette det.

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

Nu får vi den samme fejl for kolonnen y, da antallet af indtastede tegn er større end 10, som vist nedenfor:

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

Lad os også rette den.

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

Nu da det er lykkedes os at tildele værdierne til karakterdatatypen, kan vi kontrollere det ved at køre nedenstående kommando:

SELECT * FROM varchar_test;

Output:

Artikel Tags :

Skriv et svar

Din e-mailadresse vil ikke blive publiceret.