Utwórz tabelę w schemacie Postgres

Utwórz tabelę w schemacie Postgres

PostgreSQL jest jednym z najpopularniejszych obiektowych systemów baz danych. Jest to bezpłatne i oprogramowanie typu open source, które rozszerza język SQL o dodatkowe funkcje do obsługi złożonych obciążeń danych. Może działać z różnymi typami danych, niezawodne i bezpieczne. Dowiedz się więcej o funkcjach PostgreSQL.

W tym przewodniku dowiemy się więcej o tworzeniu tabel w schemacie w PostgreSQL.

Schematy w PostgreSQL

Baza danych PostgreSQL może zawierać jeden lub więcej nazwanych schematów, każdy schemat zawierający tabele.

Tę samą nazwę obiektu można przypisać na wielu schematach bez konfliktu. Na przykład następujący schemat/drzewo tabeli jest prawidłowe:

  • schema_a
    • Tabela 1
    • Tabela 2
  • schema_b
    • Tabela 1
    • Tabela 2

Możesz myśleć o schematach takich jak katalogi na poziomie systemu operacyjnego. Różnica polega na tym, że nie można zagnieżdżone schematy. Dowiedz się więcej szczegółowo o schemacie dokumentacji PostgreSQL.

Może istnieć wiele powodów, aby wdrożyć schematy:

  • Wielu użytkowników korzysta z tej samej bazy danych bez konfliktu ze sobą.
  • Lepsza organizacja i zarządzanie bazami danych w grupach logicznych.
  • Aplikacje stron trzecich mogą tworzyć swój unikalny schemat bez zderzenia z istniejącymi schematami lub innymi obiektami.

Tabele w PostgreSQL

Każda relacyjna baza danych składa się z wielu powiązanych tabel, z których każda składa się z wierszy i kolumn. PostgreSQL jest wyposażony w kilka wbudowanych tabel zawierających różne informacje o systemie. Możemy jednak tworzyć nowe tabele w zdefiniowanych przez użytkownika bazach danych i schematach.

Wymagania wstępne:

Aby wykonać kroki wykazane w tym przewodniku, będziesz potrzebować następujących elementów:

  • Odpowiednio skonfigurowany system Linux. Dowiedz się więcej o instalacji Ubuntu w VirtualBox.
  • Właściwa instalacja PostgreSQL. Sprawdź instalację PostgreSQL na Ubuntu.
  • Dostęp do użytkownika PostgreSQL za zgodą użytkowania do bazy danych.

Do celów tego przewodnika będziemy używać Postgres Aby wykonać wszystkie działania w PostgreSQL.

Tworzenie tabel w schemacie

Tworzenie bazy danych demo

Jak wspomniano wcześniej, schematy istnieją w bazie danych. Do celów demonstracyjnych tworzymy manekinową bazę danych, unikając zakłóceń w dowolnej istniejącej bazie danych.

Uzyskaj dostęp do powłoki PostgreSQL jako Postgres:

$ sudo -i -u postgres psql

Utwórz nową bazę danych Demo_db:

$ Utwórz bazę danych demo_db;

Sprawdź, czy baza danych jest utworzona pomyślnie:

$ \ l

Na koniec połącz się z nowo utworzoną bazą danych:

$ \ Connect Demo_DB;

Schemat publiczny

Każda nowa baza danych w PostgreSQL jest wyposażona w domyślny schemat - publiczny. Jeśli spróbujesz utworzyć obiekt bez określania nazwy schematu, schemat publiczny jest domyślnie wybierany.

Poniższe polecenie drukuje cały dostępny schemat w bazie danych PostgreSQL:

$ \ dn

Alternatywnie możemy również użyć następującego zapytania SQL:

$ Wybierz * z PG_CATALOG.pg_namespace;

Tworzenie nowego schematu

Aby utworzyć nowy schemat w określonej bazie danych, struktura polecenia jest następująca:

$ Utwórz schemat;

Postępując zgodnie z regułą, utwórzmy nowy schemat demo_schema:

$ Utwórz schemat demo_schema;

Sprawdź listę schematu, aby uzyskać weryfikację:

$ \ dn

Tworzenie stołu w schemacie

Teraz, gdy mamy docelowy schemat, możemy wypełnić go tabelami.

Składnia do tworzenia tabeli jest następująca:

Utwórz tabelę . (

)

Tutaj:

  • schemat: To pole określa nazwę schematu, w którym tworzona jest tabela. Jeśli nie jest podana wartość, tabela jest tworzona w ramach publiczny schemat.

Do demonstracji tworzymy prosty stół:

Utwórz tabelę demo_schema.Demo_Table (
Nazwa Char (64),
Id int not null
);

Tutaj:

  • Pole NAZWA jest określony do przechowywania ciąg 64 znaków.
  • Pole ID zawiera wartości liczb całkowitych. Termin "NIE JEST ZEREM”Wskazuje to ID Nie może być pusty ani zerowy.

Możemy zweryfikować istnienie tabeli za pomocą następującego zapytania:

$ Wybierz * z demo_schema.demo_table;

Wstawienie danych do tabeli

Z tabeli na miejscu możemy teraz wstawić niektóre wartości:

Włóż do demo_schema.Demo_Table (nazwa, id)
Wartości
(„PQR”, 45),
(„IJK”, 99)
;

Sprawdź zawartość tabeli:

$ Wybierz * z demo_schema.demo_table;

Zarządzanie schematem

Uprawnienia do schematu

Za pomocą pozwolenia schematu możemy zarządzać, jaką rolę może wykonać działanie w określonym schemacie. Spośród wszystkich możliwych przywilejów, schematy tylko wspierają Utwórz i użycie.

Aby zaktualizować zgodę schematu na określoną rolę, struktura polecenia jest następująca:

$ Dotacja na schema;

Aby odwołać zgodę schematu na określoną rolę, struktura polecenia jest następująca:

$ Odwołuje schemat;

Sprawdź zmianę za pomocą następującego polecenia:

$ \ dn+

Zmień właściwości schematu

Z pomocą Zmień schemat stwierdzenie, możemy zmodyfikować różne właściwości schematu. Na przykład: własność, nazwa schematu itp.

Aby zmienić nazwę schematu, użyj następującego zapytania:

$ Alter Scheme Zmień nazwę na;

Aby zmienić własność schematu, użyj następującego zapytania:

$ Alter Scheme właściciel do;

Zauważ, że aby zmienić własność, bieżący użytkownik musi mieć TWORZYĆ pozwolenie na schemat.

Usuwanie schematu

Jeśli schemat nie jest już konieczny, możemy go usunąć za pomocą UPUSZCZAĆ zapytanie:

Schemat $ Drop

Jeśli schemat zawiera jakikolwiek obiekt, potrzebujemy KASKADA Modyfikator:

$ Kropla kaskada;

Zarządzanie tabelą

Uprawnienia do stołu

Podobnie jak schemat, każda tabela ma również zarządzanie uprawnieniami, określając, jakie działanie może wykonać rola na stole.

Aby sprawdzić uprawnienia tabeli, użyj następującego polecenia w PSQL:

$ \ dp

Zmień właściwości tabeli

Z pomocą Zmień tabelę stwierdzenie, możemy zmodyfikować liczne aspekty już istniejącej tabeli.

Na przykład, aby upuścić kolumnę, zapytanie wygląda tak:

$ Alter Table Drop kolumna;

Aby dodać nową kolumnę, możemy użyć następującego zapytania:

$ Alter Table Dodaj kolumnę;

Możemy również ustawić kompresję dla określonej kolumny:

$ Alter kolumn Set Compression;

Usuwanie stołu

Aby usunąć tabelę ze schematu, możemy użyć zapytania do stolika:

$ Drop Table;

Zauważ, że w przeciwieństwie do schematów, Stół zrzutu Zapytanie nie spowoduje błędu, niezależnie od tego, czy tabela jest pusta, czy nie.

Wniosek

W tym przewodniku pokazaliśmy, jak utworzyć tabele w schemacie w PostgreSQL. Stworzyliśmy schemat manekina w manekinie i stworzyliśmy tabelę w schemacie. W tym przewodniku przedstawiono także, jak zarządzać różnymi właściwościami schematów i tabel.

Aby uzyskać lepszą integralność danych, możesz skonfigurować logiczną replikację PostgreSQL. Aby utrzymać zdrową bazę danych PostgreSQL, możesz skonfigurować autovacuum do czyszczenia martwych krotek, które pozostawiają usunięte rekordy.

Aby uzyskać więcej przewodników PostgreSQL, sprawdź podkategorię PostgreSQL.