Databasefuncties en triggers
Kapsel logica in Postgres-functies in en automatiseer reacties op gegevenswijzigingen met triggers, die u allemaal vanuit Supabase kunt aanroepen.
Databasefuncties en triggers is een gratis Supabase als backenddienst-les op CoddyKit. Dit is les 3 van 3. Je kunt de volledige les hieronder gratis lezen en daarna in de browser praktisch oefenen met een ingebouwde code-editor en een AI-begeleider die 24/7 beschikbaar is. Deze les maakt deel uit van het leertraject Supabase als backenddienst. Je voortgang wordt gesynchroniseerd op het web en in de CoddyKit-app. De cursus Supabase als backenddienst bevat in totaal 3 lessen.
Logica in de database
Met Postgres kunt u herbruikbare logica opslaan als functies en automatisch code uitvoeren wanneer gegevens veranderen met triggers. Zo blijven belangrijke regels dicht bij de gegevens.
Wat is een databasefunctie?
Een functie is benoemde, herbruikbare SQL of PL/pgSQL die een waarde retourneert. U kunt deze vanuit query's aanroepen of vanuit de Supabase-client via RPC.
Een eenvoudige functie schrijven
Deze functie retourneert het aantal actieve gebruikers.
create or replace function active_user_count()
returns integer
language sql
as 'select count(*)::int from users where active';De functie aanroepen vanuit Supabase
Gebruik rpc om vanuit de client een databasefunctie aan te roepen.
const { data, error } = await supabase
.rpc('active_user_count');
console.log(data);Functies met parameters
Functies kunnen argumenten accepteren, zodat geparameteriseerde logica aan de serverzijde mogelijk wordt.
create or replace function posts_by(author_id bigint)
returns setof posts
language sql
as 'select * from posts where user_id = author_id';Wat is een trigger?
Een trigger voert automatisch een functie uit BEFORE of AFTER een INSERT, UPDATE of DELETE op een tabel uit.
Een triggerfunctie
Triggerfuncties retourneren trigger en benaderen de nieuwe rij via NEW.
create or replace function set_updated_at()
returns trigger
language plpgsql
as 'begin new.updated_at = now(); return new; end;';De trigger koppelen
Koppel de functie aan een tabel en gebeurtenis.
create trigger touch_updated
before update on posts
for each row
execute function set_updated_at();Veelgebruikte toepassingen
Triggers zijn bijzonder geschikt voor:
- Tijdstempels automatisch instellen
- Gedenormaliseerde aantallen bijhouden
- Rijen voor het auditlogboek schrijven
- Een profielrij maken wanneer een gebruiker zich registreert
Houd triggers lichtgewicht
Triggers worden binnen de transactie uitgevoerd, dus zwaar werk vertraagt elke schrijfactie. Besteed lange taken in plaats daarvan uit aan Edge Functions of wachtrijen.
function isLightweight(ms) { return ms < 10; }
console.log(isLightweight(4));Alles samenbrengen
Gebruik functies voor herbruikbare, aanroepbare logica en triggers voor automatische reacties op wijzigingen, en houd het werk van triggers klein en snel.
Korte controle
Toets uw begrip van functies en triggers.
Samenvatting
U hebt geleerd hoe u aanroepbare databasefuncties schrijft, deze aanroept met rpc en logica automatiseert met triggers via NEW, terwijl het werk van triggers licht blijft.
Leer Supabase als backenddienst met een AI-tutor — gratis
Schrijf echte code en voer die uit in je browser, krijg direct hulp van een AI-tutor die 24/7 beschikbaar is en ga verder waar je gebleven bent op het web of in de app.
- Cursussen
- 11
- Lessen
- 40
Veelgestelde vragen
Is de les “Databasefuncties en triggers” gratis?
Ja — de volledige tekst van “Databasefuncties en triggers” kun je hier gratis op het web lezen. Als je interactief wilt oefenen met een ingebouwde code-editor en een AI-begeleider die 24/7 beschikbaar is, en de rest van de cursus Supabase als backenddienst wilt ontgrendelen, kun je upgraden naar CoddyKit PRO. De cursus Supabase als backenddienst bevat in totaal 3 lessen.
Wat leer ik in “Databasefuncties en triggers”?
Kapsel logica in Postgres-functies in en automatiseer reacties op gegevenswijzigingen met triggers, die u allemaal vanuit Supabase kunt aanroepen. Je oefent met Supabase als backenddienst door code rechtstreeks in de browser uit te voeren. Een AI-begeleider die 24/7 beschikbaar is beantwoordt je vragen terwijl je de les doorwerkt.
Heb ik ervaring nodig om met Supabase als backenddienst te beginnen?
Ervaring vooraf is niet nodig. Supabase als backenddienst op CoddyKit is opgebouwd voor beginners tot gevorderden, zodat je hier of bij het begin kunt starten en in je eigen tempo kunt leren. Dit is les 3 van 3.
Hoe lang duurt de les “Databasefuncties en triggers”?
De meeste lessen van CoddyKit duren ongeveer 5–10 minuten. Elke les is kort en interactief, zodat je gestaag vooruitgaat en op het web en in de app precies verdergaat waar je was gebleven.
Kan ik code schrijven en uitvoeren in deze les over Supabase als backenddienst?
Ja. Elke les over Supabase als backenddienst bevat een ingebouwde code-editor, zodat je rechtstreeks in je browser echte code kunt schrijven en uitvoeren en direct feedback van AI krijgt — lokale installatie is niet nodig.
Alle lessen in deze cursus
- Geavanceerde SQL-query's en joins
- Database-indexering voor betere prestaties
- Databasefuncties en triggers