W tej sekcji zrozumiemy, w jaki sposób polecenie PostgreSQL ADD COLUMN jest używane do dodawania jednej lub więcej kolumn do bieżącej tabeli bazy danych.
Polecenie PostgreSQL DODAJ KOLUMNĘ
Będziemy korzystać z zmień tabelę, dodaj kolumnę, polecenie dodania nowej kolumny do istniejącej tabeli.
Składnia
Składnia Zmień polecenie dodania kolumny podano poniżej:
ALTER TABLE table_name ADD COLUMN new_column_name data_type;
W powyższej składni mamy następujące parametry:
Parametr | Opis |
---|---|
Zmień tabelę | Jest to klauzula służąca do modyfikacji definicji tabeli. |
Nazwa tabeli | Służy do opisu nazwy tabeli, w której należy dodać nową kolumnę po klauzuli ALTER TABLE. |
Nowa_nazwa_kloumna | Służy do określenia nazwy kolumny wraz z jej atrybutami, takimi jak wartość domyślna, typ danych itd., po warunku DODAJ KOLUMNĘ. |
Uwaga: Kiedy dodajemy nową kolumnę do tabeli, PostgreSQL ulepsza ją na końcu tabeli, ponieważ PostgreSQL nie ma innego wyboru, aby określić miejsce nowej kolumny w tabeli.
Dodaj wiele kolumn za pomocą polecenia alter table
Składnia dodania wielu kolumn za pomocą polecenia alter table:
ALTER TABLE table_name ADD COLUMN new_column_name_1 data_type constraint, ADD COLUMN new_column_name_2 data_type constraint, ::: ::: ADD COLUMN new_column_name_N data_type constraint;
Przykłady PostgreSQL DODAJ KOLUMNĘ
Aby lepiej zrozumieć dodawanie kolumn, wykonamy poniższy proces:
Najpierw utworzymy nową tabelę o nazwie as Osoby z dwiema kolumnami Identyfikator osoby i imię za pomocą poniższego polecenia:
CREATE TABLE Persons ( Person_ID Serial primary key, Person_Name varchar not Null );
Wyjście
Po wykonaniu powyższego zapytania otrzymamy poniższy komunikat okno , który mówi, że Osoby utworzono tabelę:
Następnie dodamy Adres kolumna do Osoby tabelę za pomocą poniższego polecenia:
ALTER TABLE Persons ADD COLUMN Address VARCHAR;
Wyjście
Po wykonaniu powyższego zapytania otrzymamy poniższy komunikat:
Poniższe polecenie pomoże nam dodać plik Miasto i nr telefonu kolumny do Osoby tabela:
ALTER TABLE Persons ADD COLUMN City VARCHAR, ADD COLUMN Phone_no VARCHAR;
Wyjście
Po wykonaniu powyższego zapytania otrzymamy poniższy komunikat:
Jeżeli chcemy zobaczyć Osoby struktura tabeli w psql , użyjemy poniższego polecenia:
javatpoint=# d Persons
Wyjście z Osoby struktura tabeli
Jak widać na powyższym obrazku, mamy adres, miasto i numer telefonu kolumny dodane na końcu listy kolumn tabeli Osoby.
ciągi znaków na liczby całkowite
Dodanie kolumny z ograniczeniem NOT NULL
W tym przypadku dodamy kolumnę z ograniczeniami innymi niż zerowe do konkretnej tabeli zawierającej pewne dane.
Najpierw wstawimy pewne dane do pliku Osoby tabelę za pomocą polecenia Wstaw:
INSERT INTO Persons (Person_name) VALUES ('John'), ('Emily'), ('Mike');
Wyjście
Widzimy, że trzy wiersze zostały wstawione w Osoby tabelę w poniższym oknie komunikatu.
Załóżmy teraz, że chcemy dodać E-mail kolumna do Osoby table i w tym celu używamy następującego polecenia:
ALTER TABLE Persons ADD COLUMN Email VARCHAR NOT NULL;
Wyjście
Po wykonaniu powyższego polecenia otrzymamy jeden błąd, który to mówi
kolumna „e-mail” zawiera wartości null
Powyższy błąd wystąpił, ponieważ E-mail kolumna zawiera NIE JEST ZEREM ograniczenie.
W PostgreSQL nowa kolumna przyjmuje ZERO wartość podczas dodawania kolumn, co również zakłóca NIE JEST ZEREM ograniczenie.
Aby rozwiązać powyższy błąd, musimy wykonać poniższe kroki:
Krok 1
Po pierwsze, musimy dodać kolumnę bez NIE JEST ZEREM ograniczenie i w tym celu użyjemy następującego polecenia:
ALTER TABLE Persons ADD COLUMN Email VARCHAR;
Wyjście
Jak widzimy w poniższym oknie komunikatu E-mail kolumna była dodany w Osoby tabela:
Krok 2
Teraz zaktualizujemy wartości w kolumnie E-mail.
UPDATE Persons SET Email = '[email protected]' WHERE Person_id = 1; UPDATE Persons SET Email = '[email protected]' WHERE Person_id = 2; UPDATE Persons SET Email = '[email protected]' WHERE Person_id = 3;
Wyjście
Jak widzimy w poniższym oknie komunikatu E-mail wartości kolumn były zaktualizowany w Osoby tabela:
Jeśli chcemy sprawdzić, czy wartości są zaktualizowane, czy nie, w pliku Osoby tabeli, użyjemy Wybierać Komenda:
Select * From Persons;
Wyjście
Wynik powyższego zapytania jest następujący:
Krok 3
Po zaktualizowaniu wartości kolumny Email ustawimy NIE JEST ZEREM ograniczenie dla E-mail kolumna do Osoby tabeli za pomocą następującego polecenia:
ALTER TABLE Persons ALTER COLUMN Email SET NOT NULL;
Wyjście
Po wykonaniu powyższego polecenia naszym oczom ukaże się poniższy komunikat: