Alle centrale PostgreSQL-skemaobjekter — struktur, tabeller, views, indekser, typer, identitet, rutiner, sikkerhed og replikering — i én tæt reference.
PostgreSQL gemmer data i navngivne skemaobjekter. Hvert objekt har én opgave: en tabel gemmer rækker, et indeks fremskynder opslag, en rutine indeholder logik. Kend hvert objekt, før du vælger hvilket du tilføjer, og behandl begrænsninger og policies som de regler, der holder dataene ærlige.
Referencetabel · 45 poster
DatabaseobjekterExplained
45 of 45 rows
Struktur
Ét isoleret katalog af skemaer inde i en klynge.
Adskille applikationer eller miljøer, der ikke må dele data.
Et navngivet namespace inde i en database, der grupperer relaterede objekter.
Organisere objekter efter feature eller ejer og undgå navnekollisioner.
En navngiven placering på disken, hvor tabel- og indeksfiler lægges.
Styre varme tabeller til hurtig lagerplads og holde kold data på billige diske.
Indstillingen, der afgør, hvilke skemaer et ukvalificeret objektnavn opløses til.
Peg en session på det rigtige skema, så forespørgsler kan bruge korte navne.
En beskrivelse, der gemmes på ethvert databaseobjekt med COMMENT ON.
Dokumentere tabeller og kolonner dér, hvor forfatteren af den næste forespørgsel finder dem.
Tabeller & views
En navngiven relation, der gemmer rækker i typede kolonner.
Den primære beholder for persistent data.
En tabel, hvis rækker forsvinder ved slutningen af sessionen eller transaktionen.
Holde kladdedata eller staged data, der ikke må overleve forbindelsen.
En forældertabel opdelt i barnepartitioner efter en erklæret nøgle.
Holde meget store tabeller håndterbare ved at fordele rækker over partitioner.
En tabel, hvis rækker lever i et eksternt system, nået gennem en foreign data wrapper.
Forespørge i en fjern database eller fil, som var den en lokal tabel.
En gemt forespørgsel eksponeret som en virtuel tabel.
Præsentere de samme rækker gennem forskellige filtre eller joins.
Et simpelt view, der videresender INSERT, UPDATE og DELETE til sin bastabel.
Eksponere et filtreret eller joined udsnit af en tabel, der forbliver skrivbart.
Et view, hvis resultatsæt skrives til disk og opdateres på kommando.
Cache dyre aggregationer eller joins og læse dem hurtigt.
En funktion, der returnerer et sæt rækker, der kan bruges overalt, hvor en tabel passer.
Udfolde et beregnet sæt på stedet, ligesom unnest omdanner et array til rækker.
Indekser
Et balanceret træ-indeks til ligheds- og intervalopslag.
Fremskynde WHERE, JOIN og ORDER BY på sorterbare kolonner.
Et indeks, der afviser dubletværdier i sin nøgle.
Håndhæve entydighed på en kolonne eller en kombination af kolonner.
Inverterede eller generaliserede søgetræ-indekser til ikke-skalære værdier.
Indeksere arrays, JSONB, fuldtekstsøgning eller geometriske data.
Et indeks, der kun bygges over rækker, der matcher en WHERE-klausul.
Indeksere den varme delmængde og springe resten over for at spare plads.
Typer & udvidelser
En brugerdefineret type, hvis værdier kommer fra en fast liste af labels.
Begrænse en kolonne til et lukket sæt, såsom statuskoder.
En bastype plus en check-begrænsning, navngivet til genbrug som kolonnetype.
Dele én valideret definition, såsom en ikke-tom text, på tværs af mange kolonner.
Et regelsæt, der definerer, hvordan strenge sammenlignes og sorteres.
Få korrekt rækkefølge for store/små bogstaver, accenter eller et bestemt locale.
En installerbar pakke, der føjer funktioner, typer eller operatorer til en database.
Antage gennemprøvet tooling som PostGIS eller pg_trgm i ét trin.
Identitet & genereret
Et selvstændigt tællerobjekt, der afgiver fortløbende heltal.
Forsyne en seriel nøgle, når flere tabeller deler én generator.
En tabelkolonne båret af en intern sekvens, efter SQL-standarden.
Moderne autoincrementerende primærnøgle, foretrukket frem for SERIAL.
En kolonne, hvis værdi beregnes ud fra andre kolonner i samme række.
Gemme eller eksponere en afledt værdi uden manuelle skrivninger.
Rutiner
En navngiven SQL-blok, der returnerer en værdi eller rækker.
Indkapsle genanvendelig logik og kalde den inde i forespørgsler.
En navngiven blok, der udfører handlinger og styrer sin egen transaktion.
Flertrins-ETL, hvor rutinen committer eller ruller tilbage internt.
En rutine, der folder mange inputrækker til én værdi gennem tilstands- og finalfunktioner.
Definere egne reduktioner, såsom et vægtet gennemsnit.
Et symbol bundet til en eller flere funktioner for bestemte operandtyper.
Give dine egne typer naturlig syntaks, såsom a + b eller @>.
En erklæret konverteringsvej fra én type til en anden.
Styre, hvordan værdier skifter type, herunder hvilke konverteringer der sker implicit.
En rutine bundet til en tabelhændelse, der fyrer automatisk.
Auditere, validere eller kaskadere ændringer ved INSERT, UPDATE eller DELETE.
En trigger, der fyrer på hændelser på databaseniveau, såsom DDL-kommandoer.
Logge, blokere eller auditere skemaændringer i hele databasen.
En parset forespørgsel gemt til gentagen kørsel med bundne parametre.
Genbruge én parsing og én plan på mange kørsler af samme forespørgsel.
Et handle, der holder et resultatsæt åbent til hentning række for række.
Bladre gennem store resultater eller gå gennem rækker inde i en rutine.
Sikkerhed & regler
En navngiven identitet, der holder privilegier; en bruger er en rolle, der kan logge ind.
Gruppere rettigheder én gang og derefter tildele dem til personer, tjenester eller andre roller.
Sætninger, der tildeler privilegier på objekter til roller, eller fjerner dem.
Beslutte, hvilken rolle der kan læse, skrive eller eksekvere hvert objekt.
Skaberens indbyggede rettigheder til at ændre eller droppe et objekt, separat fra grants.
Navngive den rolle, der er ansvarlig for et objekts livscyklus.
En stående instruktion, der automatisk tildeler privilegier på objekter, som en rolle senere opretter.
Forudindstille rettigheder, så nye tabeller ikke kræver manuelle grants til app-rollen.
En regel, der afviser skrivninger, der overtræder en erklæret betingelse.
Håndhæve NOT NULL-, CHECK-, UNIQUE-, PRIMARY KEY- og FOREIGN KEY-garantier.
En rollebaseret regel, der skjuler rækker, som sessionen ikke må se.
Tenant-isolation eller adgang pr. bruger uden at omskrive applikationens forespørgsler.
Et alias, der opløser ét navn til et objekt et andet sted; nativt i Oracle og SQL Server.
Portere skemalayouts; i PostgreSQL brug search_path i stedet.
En definition af, hvilke handlinger der registreres til gennemgang, via pgaudit eller leverandørværktøjer.
Bevise, hvem der læste eller ændrede hvad, til compliance og undersøgelser.
En instruktion, der omskriver en indkommende forespørgsel til en anden kommando.
Ældre omdirigering af skrivninger; PostgreSQL foretrækker i dag triggers eller opdaterbare views.
Replikering
En definition på afsendersiden af, hvilke tabeller og ændringstyper der streames til replikaer.
Erklære, hvad en database tilbyder abonnenter på logisk replikering.
En modtager, der forbinder til en publication og anvender dens ændringer på lokale tabeller.
Trække ændringer fra en anden PostgreSQL-database ind i denne.
En markør, der får primary til at fastholde WAL, indtil en forbruger har læst den.
Garantere, at en standby eller abonnent kan genoptage uden at miste ændringer.