CREATE TABLE v shemi Postgres

Create Table V Shemi Postgres



PostgreSQL je eden najbolj priljubljenih sistemov objektno-relacijskih baz podatkov. Je brezplačna in odprtokodna programska oprema, ki razširja jezik SQL z dodatnimi funkcijami za obvladovanje zapletenih podatkovnih obremenitev. Lahko deluje z različnimi vrstami podatkov, zanesljivo in varno. Izvedite več o funkcijah PostgreSQL.

V tem priročniku bomo izvedeli več o ustvarjanju tabel v shemi v PostgreSQL.







Sheme v PostgreSQL

Baza podatkov PostgreSQL lahko vsebuje eno ali več poimenovanih shem, pri čemer vsaka shema vsebuje tabele.



Isto ime objekta je mogoče dodeliti več shemam brez navzkrižja. Veljavna je na primer naslednja shema/drevo tabele:



  • shema_a
    • tabela_1
    • tabela_2
  • shema_b
    • tabela_1
    • tabela_2

Lahko si omislite sheme, kot so imeniki na ravni operacijskega sistema. Razlika je v tem, da ne more biti ugnezdenih shem. Izvedite več o shemi na Dokumentacija PostgreSQL .





Razlogov za uporabo shem je lahko več:

  • Več uporabnikov uporablja isto zbirko podatkov brez medsebojnega konflikta.
  • Boljša organizacija in upravljanje baz podatkov v logične skupine.
  • Aplikacije drugih proizvajalcev lahko ustvarijo svojo edinstveno shemo brez trčenja z obstoječimi shemami ali drugimi predmeti.

Tabele v PostgreSQL

Vsaka relacijska zbirka podatkov je sestavljena iz več povezanih tabel, od katerih je vsaka sestavljena iz vrstic in stolpcev. PostgreSQL ima več vgrajenih tabel, ki vsebujejo različne sistemske informacije. Lahko pa ustvarimo tudi nove tabele pod uporabniško definiranimi zbirkami podatkov in shemami.



Predpogoji:

Za izvedbo korakov, prikazanih v tem priročniku, boste potrebovali naslednje komponente:

  • Pravilno konfiguriran sistem Linux. Izvedite več o namestitev Ubuntuja v VirtualBox .
  • Pravilna namestitev PostgreSQL. Preveri namestitev PostgreSQL na Ubuntu .
  • Dostop do a Uporabnik PostgreSQL z Dovoljenje za UPORABO v bazo podatkov.

Za namene tega vodnika bomo uporabili postgres za izvajanje vseh dejanj v PostgreSQL.

Ustvarjanje tabel v shemi

Ustvarjanje predstavitvene baze podatkov

Kot smo že omenili, sheme obstajajo v bazi podatkov. Za namene predstavitve ustvarimo navidezno zbirko podatkov, s čimer se izognemo motnjam v obstoječi zbirki podatkov.

Do lupine PostgreSQL dostopajte kot postgres :

$ sudo -i -u postgres psql

Ustvari novo zbirko podatkov demo_db:

$ USTVARI PODATKOVNO BAZO demo_db;

Preverite, ali je baza podatkov uspešno ustvarjena:

$ \l

Na koncu se povežite z novo ustvarjeno zbirko podatkov:

$ \connect demo_db;

Javna shema

Vsaka nova zbirka podatkov v PostgreSQL ima privzeto shemo – javnosti . Če poskušate ustvariti objekt, ne da bi navedli ime sheme, je privzeto izbrana javna shema.

Naslednji ukaz natisne vse razpoložljive sheme v bazi podatkov PostgreSQL:

$ \dn

Lahko pa uporabimo tudi naslednjo poizvedbo SQL:

$ IZBERI * IZ pg_catalog.pg_namespace;

Ustvarjanje nove sheme

Če želite ustvariti novo shemo v določeni bazi podatkov, je ukazna struktura naslednja:

$ CREATE SCHEMA ;

Po pravilu ustvarimo novo shemo demo_schema:

$ CREATE SCHEMA demo_schema;

Preverite seznam shem za preverjanje:

$ \dn

Ustvarjanje tabele v shemi

Zdaj, ko imamo ustvarjeno ciljno shemo, jo lahko zapolnimo s tabelami.

Sintaksa za ustvarjanje tabele je naslednja:

CREATE TABLE . (

...
)

Tukaj:

  • shema : To polje določa ime sheme, kjer je ustvarjena tabela. Če ni navedena nobena vrednost, se tabela ustvari pod javnosti shema.

Za predstavitev ustvarimo preprosto tabelo:

CREATE TABLE demo_schema.demo_table (

NAME CHAR(64),

ID INT NI NULL

);

Tukaj:

  • Polje IME je podano za shranjevanje niza 64 znakov.
  • Polje ID vsebuje celoštevilske vrednosti. Izraz ' NI NULL ” kaže na to ID ne more biti prazno ali ničelno.

Obstoj tabele lahko preverimo z naslednjo poizvedbo:

$ IZBERI * IZ demo_schema.demo_table;

Vstavljanje podatkov v tabelo

Ko je tabela na mestu, lahko zdaj vstavimo nekaj vrednosti:

INSERT INTO demo_schema.demo_table (IME, ID)

VREDNOTE

('PQR', 45),

('IJK', 99)

;

Preverite vsebino tabele:

$ IZBERI * IZ demo_schema.demo_table;

Upravljanje sheme

Dovoljenja sheme

S pomočjo dovoljenja za shemo lahko upravljamo, katera vloga lahko izvaja katero dejanje na določeni shemi. Od vseh možnih privilegijev podpirajo samo sheme USTVARJANJE in UPORABA.

Če želite posodobiti dovoljenje sheme za določeno vlogo, je struktura ukaza naslednja:

$ GRANT NA SHEMI TO ;

Če želite preklicati dovoljenje sheme za določeno vlogo, je ukazna struktura naslednja:

$ REVOKE ON SCHEMA TO ;

Preverite spremembo z naslednjim ukazom:

$ \dn+

Spremeni lastnosti sheme

S pomočjo SPREMENI SHEMO stavek, lahko spremenimo različne lastnosti sheme. Na primer: lastništvo, ime sheme itd.

Če želite spremeniti ime sheme, uporabite naslednjo poizvedbo:

$ ALTER SCHEMA PREIMENI V ;

Če želite spremeniti lastništvo sheme, uporabite naslednjo poizvedbo:

$ ALTER SCHEMA OWNER TO ;

Upoštevajte, da mora imeti trenutni uporabnik za spremembo lastništva USTVARJANJE dovoljenje za shemo.

Brisanje sheme

Če shema ni več potrebna, jo lahko izbrišemo z DROP poizvedba:

$ DROP SCHEMA

Če shema vsebuje kateri koli predmet, potrebujemo KASKADA modifikator:

$ DROP SCHEMA CASCADE;

Upravljanje tabel

Dovoljenja tabele

Tako kot shema ima vsaka tabela tudi upravljanje dovoljenj, ki določa, katera dejanja lahko vloga izvaja na tabeli.

Če želite preveriti dovoljenja tabele, uporabite naslednji ukaz v psql:

$ \dp

Spremeni lastnosti tabele

S pomočjo SPREMENI TABELO stavek, lahko spremenimo številne vidike že obstoječe tabele.

Na primer, če želite izpustiti stolpec, je poizvedba videti takole:

$ ALTER TABLE DROP COLUMN ;

Za dodajanje novega stolpca lahko uporabimo naslednjo poizvedbo:

$ ALTER TABLE ADD COLUMN ;

Nastavimo lahko tudi stiskanje za določen stolpec:

$ ALTER COLUMN SET COMPRESSION ;

Brisanje tabele

Za brisanje tabele iz sheme lahko uporabimo PADNA MIZA poizvedba:

$ DROP TABLE ;

Upoštevajte, da za razliko od shem, PADNA MIZA poizvedba ne bo povzročila napake, ne glede na to, ali je tabela prazna ali ne.

Zaključek

V tem priročniku smo pokazali, kako ustvariti tabele v shemi v PostgreSQL. Ustvarili smo navidezno shemo znotraj navidezne baze podatkov in ustvarili tabelo znotraj sheme. Ta vodnik je tudi predstavil, kako upravljati različne lastnosti shem in tabel.

Za boljšo celovitost podatkov lahko konfigurirate a logično podvajanje PostgreSQL . Če želite ohraniti zdravo bazo podatkov PostgreSQL, lahko konfigurirate avtovakuum očistiti mrtve tuple, ki so jih pustili izbrisani zapisi.

Za več vodnikov za PostgreSQL si oglejte Podkategorija PostgreSQL .