sql >> Database >  >> RDS >> PostgreSQL

Trigger vs. controlebeperking

De vuistregel is om CHECK . te gebruiken beperking indien mogelijk.

EEN CHECK constraint is sneller, eenvoudiger, draagbaarder, heeft minder code nodig en is minder foutgevoelig. Triggers kunnen gemakkelijk worden omzeild door bijvoorbeeld andere triggers.

Een TRIGGER is ingewikkelder. Gebruik het wanneer u moet , voor complexere vereisten.

Als een CHECK beperking te beperkend is voor uw geval of problemen veroorzaakt bij het herladen van een dump, kunt u de NOT VALID gebruiken modifier als middenweg (Postgres 9.2+). En, optioneel, VALIDATE het later. Zie:

  • Schakel alle beperkingen en tabelcontroles uit tijdens het herstellen van een dump



  1. Hoe krijg ik het verschil tussen twee rijen voor een kolomveld?

  2. Kan vooraf gemaakte db niet kopiëren van activa

  3. Slaapstandcriteria voor datums

  4. De ADO.NET-provider 'Oracle.ManagedDataAccess.Client' is niet geregistreerd in het configuratiebestand van de machine of de toepassing, of kan niet worden geladen