Alla grundläggande schemaobjekt i PostgreSQL — struktur, tabeller, vyer, index, typer, identitet, rutiner, säkerhet och replikering — i en enda kompakt referens.
PostgreSQL lagrar data i namngivna schemaobjekt. Varje objekt har en uppgift: en tabell lagrar rader, ett index snabbar upp uppslag, en rutin innehåller logik. Lär dig vad varje objekt är innan du väljer vilka du ska lägga till, och se begränsningar och policyer som de regler som håller data ärliga.
Referenstabell · 45 poster
DatabasobjektExplained
45 of 45 rows
Struktur
En isolerad katalog med scheman inuti ett kluster.
Skilja applikationer eller miljöer som inte får dela data.
Ett namngivet namnområde inuti en databas som grupperar relaterade objekt.
Organisera objekt efter funktion eller ägare och undvika namnkrockar.
En namngiven plats på disken där tabell- och indexfiler placeras.
Styra heta tabeller till snabb lagring och behålla kall data på billiga diskar.
Inställningen som avgör vilka scheman ett okvalificerat objektnamn löses mot.
Peka en session mot rätt schema så att frågor kan använda korta namn.
En beskrivning som lagras på vilket databasobjekt som helst med COMMENT ON.
Dokumentera tabeller och kolumner där nästa frågeförfattare hittar dem.
Tabeller och vyer
En namngiven relation som lagrar rader i typade kolumner.
Den primära behållaren för beständig data.
En tabell vars rader försvinner i slutet av sessionen eller transaktionen.
Hålla skiss- eller stagedata som inte får överleva anslutningen.
En föräldertabell uppdelad i barnpartitioner efter en deklarerad nyckel.
Hålla mycket stora tabeller hanterbara genom att sprida rader över partitioner per intervall eller lista.
En tabell vars rader bor i ett externt system, nådd via en foreign data wrapper.
Fråga en fjärrdatabas eller fil som om den vore en lokal tabell.
En lagrad fråga exponerad som en virtuell tabell.
Presentera samma rader genom olika filter eller joiner.
En enkel vy som vidarebefordrar INSERT, UPDATE och DELETE till bastabellen.
Exponera en filtrerad eller joinad del av en tabell som förblir skrivbar.
En vy vars resultatmängd skrivs till disk och uppdateras på begäran.
Cacha dyra aggregationer eller joiner och läsa dem snabbt.
En funktion som returnerar en mängd rader, användbar överallt där en tabell passar.
Veckla ut en beräknad mängd på plats, så som unnest förvandlar en array till rader.
Index
Ett balanserat trädindex för likhets- och intervallsökningar.
Snabba upp WHERE, JOIN och ORDER BY på sorterbara kolumner.
Ett index som avvisar dubblettvärden i sin nyckel.
Framtvinga unikhet på en kolumn eller kombination av kolumner.
Inverterade eller generaliserade sökträdindex för icke-skalära värden.
Indexera arrayer, JSONB, fulltext eller geometrisk data.
Ett index byggt endast över rader som matchar en WHERE-klausul.
Indexera den heta delmängden och hoppa över resten för att spara utrymme.
Typer och tillägg
En användardefinierad typ vars värden kommer från en fast lista med etiketter.
Begränsa en kolumn till en sluten mängd, som statuskoder.
En bastyp plus ett check-villkor, namngiven för återanvändning som kolumntyp.
Dela en validerad definition, som icke-tom text, över många kolumner.
En regeluppsättning som definierar hur strängar jämförs och sorteras.
Få korrekt ordning för skiftläge, accenter eller en specifik lokal.
Ett installerbart paket som lägger till funktioner, typer eller operatorer i en databas.
Ta i bruk beprövad verktyg som PostGIS eller pg_trgm i ett steg.
Identitet och generering
Ett fristående räknarobjekt som ger successiva heltal.
Mata en seriell nyckel när flera tabeller delar en generator.
En tabellkolumn backad av en intern sekvens, enligt SQL-standarden.
Modern autoinkrementerande primärnyckel, föredragen framför SERIAL.
En kolumn vars värde beräknas från andra kolumner i samma rad.
Lagra eller exponera ett härlett värde utan manuella skrivningar.
Rutiner
Ett namngivet SQL-block som returnerar ett värde eller rader.
Inkapsla återanvändbar logik och anropa den i frågor.
Ett namngivet block som utför åtgärder och styr sin egen transaktion.
Flerstegs-ETL där rutinen committar eller rullar tillbaka internt.
En rutin som viker många inmatningsrader till ett värde via tillstånds- och finalfunktioner.
Definiera egna aggregationer, som ett viktat medelvärde.
En symbol bunden till en eller flera funktioner för specifika operandtyper.
Ge egna typer naturlig syntax, som a + b eller @>.
En deklarerad konverteringsväg från en typ till en annan.
Styra hur värden byter typ, inklusive vilka konverteringar som sker implicit.
En rutin bunden till en tabellhändelse som utlöses automatiskt.
Granska, validera eller kaskadera ändringar vid INSERT, UPDATE eller DELETE.
En utlösare som avfyras på händelser på databasnivå, som DDL-kommandon.
Logga, blockera eller granska schemaändringar i hela databasen.
En tolkad fråga lagrad för upprepad körning med bundna parametrar.
Återanvänd en tolkning och en plan över många körningar av samma fråga.
Ett handtag som håller en resultatmängd öppen för hämtning rad för rad.
Bläddra i stora resultat eller stega igenom rader inuti en rutin.
Säkerhet och regler
En namngiven identitet som innehar privilegier; en användare är en roll som kan logga in.
Gruppera behörigheter en gång och ge dem till personer, tjänster eller andra roller.
Satser som tilldelar privilegier på objekt till roller, eller tar bort dem.
Avgöra vilken roll som kan läsa, skriva eller köra varje objekt.
Skaparens inbyggda rättigheter att ändra eller ta bort ett objekt, separat från grant.
Namnge rollen som ansvarar för ett objekts livscykel.
En stående instruktion som automatiskt ger privilegier på objekt som en roll skapar senare.
Förinställa rättigheter så nya tabeller inte behöver manuella grant för app-rollen.
En regel som avvisar skrivningar som bryter mot ett deklarerat villkor.
Framtvinga garantierna NOT NULL, CHECK, UNIQUE, PRIMARY KEY och FOREIGN KEY.
En regel per roll som döljer rader som sessionen inte får se.
Tenantisolering eller åtkomst per användare utan att skriva om applikationens frågor.
Ett alias som löser ett namn till ett objekt på annan plats; nativt i Oracle och SQL Server.
Portera schemalayouter; i PostgreSQL använd search_path istället.
En definition av vilka åtgärder som loggas för granskning, via pgaudit eller leverantörsverktyg.
Bevisa vem som läste eller ändrade vad, för efterlevnad och utredningar.
En instruktion som skriver om en inkommande fråga till ett annat kommando.
Äldre omdirigering av skrivningar; PostgreSQL föredrar numera utlösare eller uppdaterbara vyer.
Replikering
En definition på avsändarsidan av vilka tabeller och ändringstyper som strömmar ut till repliker.
Deklarera vad en databas erbjuder prenumeranter på logisk replikering.
En mottagare som ansluter till en publikation och tillämpar dess ändringar på lokala tabeller.
Dra ändringar från en annan PostgreSQL-databas in i denna.
En markör som får primären att behålla WAL tills en konsument har läst den.
Garantera att en standby eller prenumerant kan återuppta utan att förlora ändringar.