Redshift Alter Table Dodaj kolumnę

Redshift Alter Table Dodaj kolumnę
Amazon Redshift to baza danych SQL oparta na chmurze lub, dokładniej, usługa magazynowania danych. Jest to w pełni zarządzana oferta bez serwera przez AWS, w której wystarczy skonfigurować klaster Redshift, aby wykonać zadanie. Istnieją węzły obliczeniowe w każdym klastrze Redshift, które zależą od obciążenia w bazie danych.

W tym artykule wyjaśniono, w jaki sposób możesz dodać nową kolumnę do istniejącej tabeli przesunięcia ku czerwieni bez zakłócania czegokolwiek innego w strukturze bazy danych. Zakładamy, że przed przejściem przez ten artykuł masz wiedzę o konfiguracji klastra Redshift.

Krótkie podsumowanie poleceń SQL

Przejrzyjmy krótko podstawowe pięć rodzajów poleceń SQL, aby dowiedzieć się, który typ polecenia będziemy musieli dodać nową kolumnę do tabeli.

  • Język definicji danych (DDL): Polecenia DDL są najczęściej używane do wykonywania zmian strukturalnych w bazie danych, takich jak tworzenie nowej tabeli, usuwanie tabeli, wprowadzanie zmian w tabeli, takiej jak dodawanie i usuwanie kolumny itp. Główne powiązane z nim polecenia to: Utwórz, zmień, upuszczanie i obcinaj.
  • Język manipulacji danymi (DML): Są to najczęściej używane polecenia do manipulowania danymi w bazie danych. Regularne wprowadzanie danych, usuwanie danych i aktualizacje są wykonywane za pomocą tych poleceń. Obejmuje to polecenia wstawiania, aktualizacji i usuwania.
  • Język kontroli danych (DCL): Są to proste polecenia używane do zarządzania uprawnieniami użytkownika w bazie danych. Możesz pozwolić lub odmówić konkretnemu użytkownikowi wykonanie jakiejś operacji w bazie danych. Używane tutaj polecenia to grant i odwołanie.
  • Język kontroli transakcji (TCL): Polecenia te służą do zarządzania transakcjami w bazie danych. Służą one do zapisywania zmian bazy danych lub odrzucenia określonych zmian, powracając do jakiegoś poprzedniego punktu. Polecenia obejmują zatwierdzenie, wycofanie i savePoint.
  • Język zapytania o dane (DQL): Są one po prostu używane do wyodrębnienia lub zapytania o określone dane z bazy danych. Do przeprowadzenia tej operacji używane jest pojedyncze polecenie, a to jest polecenie wyboru.

Z poprzedniej dyskusji jasne jest, że będziemy potrzebować polecenia DDL ZMIENIAĆ Aby dodać nową kolumnę do istniejącej tabeli.

Właściciel przewodów

Jak zapewne wiesz, każda baza danych ma swoich użytkowników i inny zestaw uprawnień. Więc zanim spróbuje edytować tabelę, użytkownik musi posiadać tę tabelę w bazie danych. W przeciwnym razie nie otrzymasz pozwolenia na zmianę. W takich przypadkach musisz pozwolić użytkownikowi na wykonywanie określonych operacji w tabeli poprzez zmianę właściciela tabeli. Możesz wybrać istniejącego użytkownika lub utworzyć nowego użytkownika w swojej bazie danych, a następnie uruchomić następujące polecenie:

Zmień tabelę
właściciel < new user>

W ten sposób możesz zmienić właściciela tabeli za pomocą polecenia alter. Teraz zobaczymy, jak dodać nową kolumnę do naszej istniejącej tabeli bazy danych.

Dodanie kolumny w tabeli przesunięcia ku czerwieni

Załóżmy, że prowadziłeś małą firmę informacyjną z różnymi działami i opracowałeś osobne tabele bazy danych dla każdego działu. Wszystkie dane pracownicze dla zespołu HR są przechowywane w tabeli o nazwie HR_Team, posiadające trzy kolumny o nazwie Serial_Number, Nazwa i Date_OF_Joining. Szczegóły tabeli można zobaczyć na poniższym zrzucie ekranu:

Wszystko idzie dobrze. Ale z czasem zdałeś sobie sprawę, aby jeszcze bardziej ułatwić swoje życie, dodając pensje pracowników w bazie danych, którym wcześniej zarządzałeś za pomocą prostych arkuszy kalkulacyjnych. Więc chcesz wypełnić inną kolumnę w każdej tabeli działów o nazwie pensja.

Zadanie można po prostu wykonać za pomocą następującego polecenia Tabela Alter:

Zmień tabelę

dodać

Następnie potrzebujesz następujących atrybutów do wykonania poprzedniego zapytania w klastrze Redshift:

  • Nazwa tabeli: Nazwa tabeli, w której chcesz dodać nową kolumnę
  • Nazwa kolumny: Nazwa nowej kolumny, którą dodajesz
  • Typ danych: Zdefiniuj typ danych nowej kolumny

Teraz dodamy nazwaną kolumnę wynagrodzenie z typem danych int do naszego istniejącego stołu HR_Team.

Tak więc poprzednie zapytanie dodało nową kolumnę do istniejącej tabeli przesunięcia ku czerwieni. Typ danych dla tej kolumny jest liczbą całkowitą, a wartość domyślna jest ustawiona na NULL. Teraz możesz dodać rzeczywiste żądane dane w tej kolumnie.

Dodawanie kolumny z określoną długością ciągów

Weźmy kolejny przypadek, w którym możesz również zdefiniować długość ciągów po typie dla nowej kolumny, którą dodamy. Składnia będzie taka sama, z wyjątkiem tego, że istnieje tylko dodanie jednego atrybutu.

Zmień tabelę

dodać <(Length)>

Na przykład chcesz zadzwonić do każdego członka zespołu z krótkim pseudonimem zamiast ich pełnego nazwiska i chcesz, aby pseudonimy składały się z maksymalnie pięciu znaków.

W tym celu będziesz musiał ograniczyć ludzi do wykroczenia poza pewną długość dla pseudonimów.

Następnie dodaje się nową kolumnę i ustaliliśmy limit varchar, aby nie mogła wziąć więcej niż pięć znaków.

Teraz, jeśli ktoś spróbuje dodać jego pseudonim dłużej, niż się spodziewamy, baza danych nie pozwoli na tę operację i zgłosi błąd.

Ale jeśli wprowadzimy wszystkie pseudonimy z pięcioma lub mniejszymi znakami, operacja odniesie sukces.

Korzystając z poprzedniego zapytania, możesz dodać nową kolumnę i umieścić limit długości ciągu w tabeli przesunięcia ku czerwieni.

Dodanie kolumny klucza obcego

Klucze zagraniczne służą do odniesienia danych z jednej kolumny do drugiej. Weź pod uwagę, że ludzie w swojej organizacji pracują w więcej niż jednym zespole, i chcesz śledzić hierarchię swojej organizacji. Zróbmy Web_Team I dev_team Dzielenie się tymi samymi ludźmi i chcemy odwoływać się do nich za pomocą klawiszy zagranicznych. dev_team po prostu ma dwie kolumny, które są dowód pracownika I nazwa.

Teraz chcemy utworzyć kolumnę o nazwie dowód pracownika w Web_Team tabela. Dodanie nowej kolumny jest takie samo, jak omówione powyżej.

Następnie ustawimy nowo dodaną kolumnę jako klucz obcy, odwołując się do kolumny dowód pracownika obecny w dev_team tabela. Potrzebujesz następującego polecenia, aby ustawić klucz obcy:

Alter Table Organization.Web_Team
Dodaj obcy klucz
() Bibliografia ();

W ten sposób możesz dodać nową kolumnę i ustawić ją jako klawisz obcy w bazie danych.

Wniosek

Widzieliśmy, jak wprowadzić zmiany w naszych tabelach bazy danych, takie jak dodanie kolumny, usuwanie kolumny i zmiana nazwy kolumny. Te działania w tabeli przesunięcia ku czerwieni można wykonać po prostu za pomocą poleceń SQL. Możesz zmienić swój klucz podstawowy lub ustawić inny klucz obcy, jeśli chcesz.