Innehållsförteckning
Syntaxen för PostgreSQL sameksisterar utan problem med ANSI-SQL-standarder, trots att PostgreSQL tillåter oss att ha flera knep i ärmen när vi gör datainlägg som inte finns i andra databashanterare, en av dessa är skärkonstruktorn som är avancerad för flera poster.Flera insatser
Som vi har förklarat har vi möjlighet att infoga flera rader, men låt oss se ett exempel i koden för att kunna komma i harmoni:
FÖRSTORA
Vi kan se att detta fungerar på ett liknande sätt som att infoga en enda rad med SÄTT IN VÄRDEN () bara vi kan lägga till mer än en post åt gången genom att separera varje uppsättning poster med ett komma (,).Begränsningar
De begränsningar i PostgreSQL är de det mest avancerade och komplexa som kan hittas på databasmarknaden, eftersom det förutom att skapa begränsningen också möjliggör hantering av alla aspekter av befintlig data, inklusive villkor under vilka vi kan utelämna användningen av begränsningar och bryta mot begränsningen vid tidpunkten för införandet av data.
Låt oss se hur man hanterar en främmande nyckelbegränsning, PostgreSQL Tillåter alternativ för kaskadändring och radering när du använder begränsningar.
I det här exemplet kommer vi att använda flera saker på ett demonstrativt sätt.
FÖRSTORA
1. I denna första begränsning definierar vi ett främmande nyckelförhållande mellan tabellen fakta och bordet faktatyper, för att förhindra introduktion av element som inte redan finns i tabellen fact_types.
2. Vi definierar också en kaskadregel som automatiskt uppdaterar faktatabellen i fältet fact_type_id om någon post i faktatypstabellen räknas upp igen. Dessutom begränsar vi borttagningen om något av värdena används.
3. Till skillnad från den primära nyckelns beteende och unika begränsningar lägger PostgreSQL inte automatiskt till ett index för en utländsk nyckel, vi måste göra detta för vårt eget konto.
Unika begränsningarVarje tabell kan inte ha mer än en enda primärnyckel, nu om vi behöver ha andra unika fält i andra kolumner måste vi gå till unika begränsningar, om du lägger till detta skapas automatiskt ett unikt associerat index, till skillnad från en primär nyckel kan en kolumn med en unik begränsning fyllas med NULL -värden, med en unik begränsning som denna kolumn som har den inte kvalificerar sig för att delta i en utländsk nyckelförening.
För att göra detta kan vi göra det på följande sätt:
ALTER TABLE logs_2011 ADD CONSTRAINT uq_us_log UNIQUE (user_name, log_ts);
Kontrollera begränsningar
De kontrollera begränsningar är villkor som ett fält måste uppfylla för varje rad, frågeplaneraren för PostgreSQL Den ansvarar för att verifiera om det finns en kontrollbegränsning i tabellen som gör att ett filter av ett villkor inte kan uppfyllas, då hoppar det över verifieringen av villkoren.
Låt oss se hur vi kan skapa en kontrollera begränsning:
[size = 4] ALTER TABLE loggar ADD CONSTRAINT chk_lusername [/ size] [size = 4] CHECK (user_name = lower (user_name)); [/ size]
Tja med detta avslutar vi denna handledning som vi lärde oss lite mer om de avancerade PostgreSQL -konfigurationerna när vi gör insatser och verifierar data med villkoren för begränsningarna.Gillade du och hjälpte denna handledning?Du kan belöna författaren genom att trycka på den här knappen för att ge honom en positiv poäng