PostgreSQL shēma ļauj apvienot vairākas tabulas, no­dro­ši­not labāku datubāzes or­ga­ni­zā­ci­ju un vien­kār­šā­ku pār­val­dī­bu. Shēmu var izveidot, iz­man­to­jot komandu CREATE SCHEMA. Ja shēma vairs nav vajadzīga, to var vienkārši dzēst, iz­man­to­jot komandu DROP SCHEMA.

Kas ir PostgreSQL shēma?

PostgreSQL sistēmā shēma ir tabulu kopums. Tajā var ietilpt arī indeksi, secības, datu tipi un funkcijas, tādējādi tā ir līdzīga di­rek­to­ri­jam. Tomēr, atšķirībā no di­rek­to­ri­jiem, shēmas nevar būt sav­star­pē­ji iekļautas. Šāda datubāzes objektu or­ga­ni­zē­ša­nas metode ir īpaši noderīga, lai pār­val­dī­tu lielas datubāzes, kurās ir daudz tabulu.

Shēmas atrodas starp datu bāzes līmeni un at­se­viš­ķām tabulām. Šeit ir pārskats par populārās datu bāzes pār­val­dī­bas sistēmas pilno hie­rar­his­ko struktūru:

  1. Instance (PostgreSQL vidē bieži saukta par serveri, satur vairākas datu bāzes)
  2. Datu bāze
  3. Shēma
  4. Tabula
  5. Rinda

Lai izveidotu jaunu shēmu PostgreSQL, varat izmantot CREATE SCHEMA komandu. Lai dzēstu shēmu, iz­man­to­jiet DROP SCHEMA komandu. Tur­pi­nā­ju­mā mēs abas komandas ap­ska­tī­sim sīkāk.

Kāda ir PostgreSQL shēmu sintakse?

Shēmas izveides sintakse PostgreSQL ir šāda:

CREATE SCHEMA name;
postgresql

Šī komanda liek PostgreSQL izveidot shēmu datu bāzē. Pēc pašas komandas ir jāpiešķir shēmai unikāls nosaukums.

Kā pievienot jaunu tabulu PostgreSQL shēmai

Kad iz­vei­do­jat jaunas tabulas, iz­man­to­jot PostgreSQL komandu CREATE TABLE, tās varat pie­sais­tīt shēmai. Sintakse šim nolūkam izskatās šādi:

CREATE TABLE your_schema.new_table (
…
);
postgresql

Lai parādītu, kā tas darbojas, vispirms iz­vei­do­sim shēmu ar nosaukumu customers“:

CREATE SCHEMA customers;
postgresql

Tālāk iz­vei­do­jiet jaunu tabulu ar nosaukumu customer_list_uk ” un pie­vie­no­jiet to shēmai customers ”:

CREATE TABLE customers.customer_list_uk (
id INT PRIMARY KEY NOT NULL,
name VARCHAR(50) NOT NULL,
country VARCHAR(50),
address VARCHAR(255)
);
postgresql

Tādējādi tiek izveidota tukša tabula shēmā customers “. Tagad šo tabulu var aizpildīt, iz­man­to­jot PostgreSQL komandu INSERT INTO.

Note

Ja shēma nav norādīta, jaunās tabulas au­to­mā­tis­ki tiek pie­vie­no­tas no­klu­sē­ju­ma shēmai (public).

Kā dzēst shēmu ar DROP SCHEMA

Varat arī dzēst PostgreSQL shēmu, ja tā vairs nav vajadzīga. Ja shēma ir tukša, varat izmantot šādu komandu:

DROP SCHEMA customers;
postgresql

Lai dzēstu shēmu un visus tajā esošos objektus, iz­man­to­jiet CASCADE:

DROP SCHEMA customers CASCADE;
postgresql

Šī komanda ne­at­grie­ze­nis­ki dzēš shēmu un visus tajā esošos datus, tāpēc lūdzu iz­man­to­jiet to ar pie­sar­dzī­bu.

Go to Main Menu