GeeksforGeeks

PostgreSQL obsługuje znakowy typ danych o nazwie VARCHAR. Ten typ danych jest używany do przechowywania znaków o ograniczonej długości. Reprezentowany jest jako varchar(n) w PostgreSQL, gdzie n określa limit długości znaków. Jeśli n nie zostanie określone, domyślnie ustawiony jest varchar , który ma nieograniczoną długość. Próba zapisania dłuższego ciągu znaków w kolumnie określonej przez varchar(n) spowoduje wystąpienie błędu w PostgreSQL. Wyjątkiem jest jednak sytuacja, gdy nadmiarowe znaki są spacjami, wówczas PostgreSQL obetnie je do maksymalnej długości i zapisze ciąg. Jedyną zaletą określenia długości dla typu danych varchar jest to, że PostgreSQL sprawdzi i wyświetli błąd, jeśli spróbujesz wstawić dłuższy ciąg do kolumny varchar(n).

Syntax: variable_name VARCHAR(n)

Przykład :
Utwórzmy nową tabelę (powiedzmy, char_test) dla celów demonstracyjnych za pomocą poniższych poleceń:

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

Teraz wstawmy nowy wiersz do tabeli char_test za pomocą poniższego polecenia:

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

Na tym etapie PostgreSQL zgłosi błąd, ponieważ typ danych kolumny x to char(1), a my próbowaliśmy wstawić do tej kolumny ciąg znaków składający się z trzech znaków, jak pokazano poniżej:

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

Więc teraz naprawmy to.

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

Teraz otrzymamy ten sam błąd dla kolumny y, ponieważ liczba wprowadzonych znaków jest większa niż 10, jak pokazano poniżej:

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

Naprawmy to również.

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

Teraz, gdy udało nam się pomyślnie przypisać wartości do typu danych znakowych, sprawdź to, uruchamiając poniższe polecenie:

SELECT * FROM varchar_test;

Output:

Article Tags :

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany.