IZVEIDOT TABULU shēmā Postgres

Izveidot Tabulu Shema Postgres



PostgreSQL ir viena no populārākajām objektu relāciju datu bāzes sistēmām. Tā ir bezmaksas un atvērtā pirmkoda programmatūra, kas paplašina SQL valodu ar papildu funkcijām, lai apstrādātu sarežģītās datu darba slodzes. Tas var strādāt ar dažādiem datu veidiem, uzticams un drošs. Uzziniet vairāk par PostgreSQL funkcijām.

Šajā rokasgrāmatā mēs uzzināsim vairāk par tabulu izveidi shēmā PostgreSQL.







Shēmas programmā PostgreSQL

PostgreSQL datu bāzē var būt viena vai vairākas nosauktas shēmas, katrā shēmā ir tabulas.



To pašu objekta nosaukumu var piešķirt vairākām shēmām bez konflikta. Piemēram, ir derīga šāda shēma/tabulas koks:



  • shēma_a
    • tabula_1
    • tabula_2
  • shēma_b
    • tabula_1
    • tabula_2

Varat iedomāties tādas shēmas kā direktorijus operētājsistēmas līmenī. Atšķirība ir tāda, ka nevar būt ligzdotas shēmas. Uzziniet vairāk par shēmu vietnē PostgreSQL dokumentācija .





Shēmu ieviešanai var būt vairāki iemesli:

  • Vairāki lietotāji izmanto vienu un to pašu datu bāzi, nekonfliktējot viens ar otru.
  • Labāka datu bāzu organizēšana un pārvaldība loģiskās grupās.
  • Trešo pušu lietotnes var izveidot savu unikālo shēmu, nesaduroties ar esošajām shēmām vai citiem objektiem.

Tabulas programmā PostgreSQL

Jebkura relāciju datu bāze sastāv no vairākām saistītām tabulām, no kurām katra sastāv no rindām un kolonnām. PostgreSQL nāk ar vairākām iebūvētām tabulām, kas satur dažādu sistēmas informāciju. Tomēr mēs varam arī izveidot jaunas tabulas saskaņā ar lietotāja definētām datu bāzēm un shēmām.



Priekšnosacījumi:

Lai veiktu šajā rokasgrāmatā parādītās darbības, jums būs nepieciešami šādi komponenti:

  • Pareizi konfigurēta Linux sistēma. Uzziniet vairāk par Ubuntu instalēšana programmā VirtualBox .
  • Pareiza PostgreSQL instalēšana. Pārbaudiet PostgreSQL instalēšana Ubuntu .
  • Piekļuve a PostgreSQL lietotājs ar LIETOŠANAS atļauja uz datu bāzi.

Šīs rokasgrāmatas vajadzībām mēs izmantosim postgres lai veiktu visas darbības programmā PostgreSQL.

Tabulu izveide shēmā

Demonstrācijas datu bāzes izveide

Kā minēts iepriekš, shēmas pastāv datu bāzē. Demonstrācijas nolūkos mēs izveidojam fiktīvu datubāzi, izvairoties no jebkādas esošās datu bāzes pārtraukšanas.

Piekļūstiet PostgreSQL apvalkam kā postgres :

$ sudo -i -u postgres psql

Izveidojiet jaunu datu bāzi demo_db:

$ IZVEIDOT DATU BĀZI demo_db;

Pārbaudiet, vai datu bāze ir veiksmīgi izveidota:

$ \l

Visbeidzot, izveidojiet savienojumu ar jaunizveidoto datu bāzi:

$ \connect demo_db;

Publiskā shēma

Jebkurai jaunai PostgreSQL datu bāzei ir noklusējuma shēma - publiski . Ja mēģināt izveidot objektu, nenorādot shēmas nosaukumu, pēc noklusējuma tiek atlasīta publiskā shēma.

Šī komanda izdrukā visu PostgreSQL datubāzē pieejamo shēmu:

$ \dn

Alternatīvi mēs varam izmantot arī šādu SQL vaicājumu:

$ SELECT * FROM pg_catalog.pg_namespace;

Jaunas shēmas izveide

Lai izveidotu jaunu shēmu noteiktā datu bāzē, komandu struktūra ir šāda:

$ IZVEIDOT SHĒMU ;

Ievērojot noteikumu, izveidosim jaunu shēmu demo_schema:

$ IZVEIDOT SHĒMU demo_schema;

Pārbaudiet shēmu sarakstu verifikācijai:

$ \dn

Tabulas izveide shēmā

Tagad, kad ir izveidota mērķa shēma, mēs varam to aizpildīt ar tabulām.

Tabulas izveides sintakse ir šāda:

IZVEIDOT TABULU . (

...
)

Šeit:

  • shēma : Šajā laukā ir norādīts tās shēmas nosaukums, kurā tiek izveidota tabula. Ja vērtība nav norādīta, tabula tiek izveidota zem publiski shēma.

Demonstrēšanai mēs izveidojam vienkāršu tabulu:

IZVEIDOT TABULU demo_schema.demo_table (

NOSAUKUMS CHAR (64),

ID INT NOT NULL

);

Šeit:

  • Lauks VĀRDS ir norādīts, lai saglabātu 64 rakstzīmju virkni.
  • Lauks ID satur veselas vērtības. Termiņš ' NAV NULL ” norāda uz to ID nevar būt tukšs vai nulle.

Mēs varam pārbaudīt tabulas esamību, izmantojot šādu vaicājumu:

$ SELECT * NO demo_schema.demo_table;

Datu ievietošana tabulā

Kad tabula ir vietā, tagad varam ievietot dažas vērtības:

INSERT INTO demo_schema.demo_table (NAME, ID)

VĒRTĪBAS

('PQR', 45),

('IJK', 99)

;

Pārbaudiet tabulas saturu:

$ SELECT * NO demo_schema.demo_table;

Shēmu pārvaldība

Shēmas atļaujas

Ar shēmas atļaujas palīdzību mēs varam pārvaldīt, kura loma kādu darbību var veikt konkrētai shēmai. No visām iespējamām privilēģijām atbalsta tikai shēmas IZVEIDOT un IZMANTOT.

Lai atjauninātu shēmas atļauju konkrētai lomai, komandu struktūra ir šāda:

$ PIEŠĶIRT SHĒMAI ;

Lai atsauktu shēmas atļauju noteiktai lomai, komandu struktūra ir šāda:

$ ATCELT SHĒMĀ UZ ;

Pārbaudiet izmaiņas, izmantojot šo komandu:

$\dn+

Mainīt shēmas rekvizītus

Ar palīdzību MAINĪT SHĒMU apgalvojumu, mēs varam modificēt dažādas shēmas īpašības. Piemēram: īpašumtiesības, shēmas nosaukums utt.

Lai mainītu shēmas nosaukumu, izmantojiet šādu vaicājumu:

$ ALTER SCHEMA PĀRDĒVĒT UZ ;

Lai mainītu shēmas īpašumtiesības, izmantojiet šādu vaicājumu:

$ ALTER SCHEMA ĪPAŠNIEKS UZ ;

Ņemiet vērā, ka, lai mainītu īpašumtiesības, pašreizējam lietotājam ir jābūt IZVEIDOT atļauja shēmai.

Shēmas dzēšana

Ja shēma vairs nav nepieciešama, mēs varam to izdzēst, izmantojot NOLIETOT vaicājums:

$ NOMET SHĒMU

Ja shēmā ir kāds objekts, mums ir nepieciešams KASKĀDE modifikators:

$ DROP SCHEMA CASCADE;

Tabulu pārvaldība

Tabulas atļaujas

Tāpat kā shēmā, katrai tabulai ir arī atļauju pārvaldība, kas nosaka, kādu darbību loma var veikt tabulā.

Lai pārbaudītu tabulas atļaujas, psql izmantojiet šo komandu:

$ \dp

Mainiet tabulas rekvizītus

Ar palīdzību MAINĪT TABLU apgalvojumu, mēs varam modificēt daudzus jau esošas tabulas aspektus.

Piemēram, lai nomestu kolonnu, vaicājums izskatās šādi:

$ ALTER TABLE DROP COLUMN ;

Lai pievienotu jaunu kolonnu, mēs varam izmantot šādu vaicājumu:

$ ALTER TABLE ADD COLUMN ;

Mēs varam arī iestatīt saspiešanu konkrētai kolonnai:

$ ALTER COLUMN SET KOMPRESIJA ;

Tabulas dzēšana

Lai izdzēstu tabulu no shēmas, mēs varam izmantot NOTEIKT GALDU vaicājums:

$ DROP TABLE ;

Ņemiet vērā, ka atšķirībā no shēmām, NOTEIKT GALDU vaicājums neradīs kļūdu neatkarīgi no tā, vai tabula ir tukša.

Secinājums

Šajā rokasgrāmatā mēs parādījām, kā izveidot tabulas shēmā programmā PostgreSQL. Mēs izveidojām fiktīvu shēmu fiktīvajā datubāzē un izveidojām tabulu shēmā. Šajā rokasgrāmatā ir arī parādīts, kā pārvaldīt dažādus shēmu un tabulu rekvizītus.

Lai uzlabotu datu integritāti, varat konfigurēt a loģiskā PostgreSQL replikācija . Lai PostgreSQL datubāze būtu vesela, varat konfigurēt autovacuum lai notīrītu mirušos kopas, kuras atstājuši dzēstie ieraksti.

Lai iegūtu vairāk PostgreSQL rokasgrāmatu, skatiet PostgreSQL apakškategorija .