Skip to content

Databaseobjekter forklart

Alle kjerneobjektene i et PostgreSQL-skjema — struktur, tabeller, visninger, indekser, typer, identitet, rutiner, sikkerhet og replikering — samlet i én kompakt referanse.

PostgreSQL lagrer data i navngitte skjemaobjekter. Hvert objekt har én oppgave: en tabell lagrer rader, en indeks gjør oppslag raskere, en rutin inneholder logikk. Lær hva hvert objekt er før du velger hvilke du skal legge til, og behandle begrensninger og policyer som reglene som holder dataene ærlige.

Referansetabell · 45 oppføringer
45 of 45 rows
Struktur
Étt isolert katalogoppbevaringssted for skjemaer inne i en klynge.Skille applikasjoner eller miljøer som ikke må dele data.
Et navngitt navnerom inne i en database som grupperer relaterte objekter.Organisere objekter etter funksjon eller eier og unngå navnekonflikter.
En navngitt plassering på disken der tabell- og indeksfiler plasseres.Styre varme tabeller til rask lagring og holde kald data på billige disker.
Innstillingen som avgjør hvilke skjemaer et ukvalifisert objektnavn løses mot.Pek en økt mot riktig skjema slik at spørringer kan bruke korte navn.
En beskrivelse lagret på et hvilket som helst databaseobjekt med COMMENT ON.Dokumentere tabeller og kolonner der neste forfatter av en spørring finner dem.
Tabeller og visninger
En navngitt relasjon som lagrer rader i typede kolonner.Den primære beholderen for vedvarende data.
En tabell hvis rader forsvinner på slutten av økten eller transaksjonen.Holde skravedata eller stagedata som ikke må overleve tilkoblingen.
En foreldertabell delt inn i barnepartisjoner etter en deklarert nøkkel.Holde svært store tabeller håndterbare ved å fordele rader over partisjoner etter område eller liste.
En tabell hvis rader bor i et eksternt system, nådd gjennom en foreign data wrapper.Spørre en ekstern database eller fil som om den var en lokal tabell.
En lagret spørring eksponert som en virtuell tabell.Presentere de samme radene gjennom ulike filtre eller joins.
En enkel visning som videresender INSERT, UPDATE og DELETE til basistabellen.Eksponere en filtrert eller joinet del av en tabell som fortsatt er skrivbar.
En visning hvis resultatsett skrives til disk og oppdateres på forespørsel.Mellomlagre kostbare aggregater eller joins og lese dem raskt.
En funksjon som returnerer et sett med rader som kan brukes overalt en tabell passer.Utvide et beregnet sett på stedet, slik unnest gjør en array om til rader.
Indekser
En balansert treindeks for likhets- og områdesøk.Gjøre WHERE, JOIN og ORDER BY raskere på sorterbare kolonner.
En indeks som avviser duplikatverdier i nøkkelen sin.Håndheve unikhet på en kolonne eller en kombinasjon av kolonner.
Inverterte eller generaliserte søketreindekser for ikke-skalare verdier.Indeksere arrays, JSONB, fulltekst eller geometriske data.
En indeks bygget kun over rader som matcher en WHERE-klausul.Indeksere det varme delsettet og hoppe over resten for å spare plass.
Typer og utvidelser
En brukerdefinert type hvis verdier kommer fra en fast liste med etiketter.Begrense en kolonne til et lukket sett, som statuskoder.
En bastype pluss en sjekkbegrensning, navngitt for gjenbruk som kolonnetype.Dele én validert definisjon, som ikke-tom tekst, på tvers av mange kolonner.
Et regelsett som definerer hvordan strenger sammenlignes og sorteres.Få riktig rekkefølge for store og små bokstaver, aksenter eller en bestemt lokalitet.
En installerbar pakke som legger til funksjoner, typer eller operatorer i en database.Ta i gang bevist verktøy som PostGIS eller pg_trgm i ett steg.
Identitet og generering
Et frittstående tellerobjekt som gir påfølgende heltall.Forsyne en seriell nøkkel når flere tabeller deler én generator.
En tabellkolonne understøttet av en intern sekvens, i henhold til SQL-standarden.Moderne selv-økende primærnøkkel, foretrukket fremfor SERIAL.
En kolonne hvis verdi beregnes fra andre kolonner i samme rad.Lagre eller eksponere en avledet verdi uten manuelle skrivinger.
Rutiner
En navngitt blokk med SQL som returnerer en verdi eller rader.Innkapsle gjenbrukbar logikk og kalle den inne i spørringer.
En navngitt blokk som utfører handlinger og styrer sin egen transaksjon.Flertrinns ETL der rutinen commiter eller ruller tilbake internt.
En rutin som folder mange inngangsrader til én verdi gjennom tilstands- og sluttfunksjoner.Definere egendefinerte reduksjoner, som et veiet gjennomsnitt.
Et symbol bundet til én eller flere funksjoner for bestemte operandtyper.Gi egendefinerte typer naturlig syntaks, som a + b eller @>.
En deklarert konverteringsvei fra én type til en annen.Styre hvordan verdier skifter type, inkludert hvilke konverteringer som skjer implisitt.
En rutin bundet til en tabellhendelse som utløses automatisk.Auditere, validere eller kaskadere endringer ved INSERT, UPDATE eller DELETE.
En utløser som avfyres ved hendelser på databasenivå, som DDL-kommandoer.Logge, blokkere eller auditere skjemaendringer i hele databasen.
En tolket spørring lagret for gjentatt kjøring med bundne parametre.Gjenbruke én tolkning og én plan på tvers av mange kjøringer av samme spørring.
Et håndtak som holder et resultatsett åpent for henting rad for rad.Bla gjennom store resultater eller gå gjennom rader inne i en rutin.
Sikkerhet og regler
En navngitt identitet som inneholder privilegier; en bruker er en rolle som kan logge inn.Gruppere tillatelser én gang, og deretter gi dem til personer, tjenester eller andre roller.
Setninger som tildeler privilegier på objekter til roller, eller fjerner dem.Bestemme hvilken rolle som kan lese, skrive eller utføre hvert objekt.
Skaperens innebygde rettigheter til å endre eller slippe et objekt, atskilt fra tildelinger.Navngi rollen som er ansvarlig for et objekts livssyklus.
En stående instruks som automatisk tildeler privilegier på objekter en rolle oppretter senere.Forhåndsinnstille rettigheter slik at nye tabeller ikke trenger manuelle tildelinger for app-rollen.
En regel som avviser skrivinger som bryter en deklarert betingelse.Håndheve garantiene NOT NULL, CHECK, UNIQUE, PRIMARY KEY og FOREIGN KEY.
En regel per rolle som skjuler rader økten ikke må se.Tenant-isolasjon eller tilgang per bruker uten å omskrive applikasjonsspørringene.
Et alias som løser ett navn til et objekt et annet sted; opprinnelig i Oracle og SQL Server.Portere skjemaoppsett; i PostgreSQL brukes search_path i stedet.
En definisjon av hvilke handlinger som loggføres for gjennomgang, via pgaudit eller leverandørverktøy.Bevise hvem som leste eller endret hva, for etterlevelse og undersøkelser.
En instruks som skriver om en innkommende spørring til en annen kommando.Eldre omadressering av skrivinger; PostgreSQL foretrekker nå utløsere eller oppdaterbare visninger.
Replikering
En definisjon på avsendersiden av hvilke tabeller og endringstyper som strømmes ut til replikaer.Deklarere hva en database tilbyr abonnenter på logisk replikering.
En mottaker som kobler seg til en publikasjon og anvender endringene dens på lokale tabeller.Hente endringer fra en annen PostgreSQL-database inn i denne.
En markør som får primærserveren til å beholde WAL til en forbruker har lest den.Garantere at en standby eller abonnent kan gjenoppta uten å miste endringer.