sql >> Database >  >> RDS >> Sqlserver

Check Constraint - Subquery's zijn in deze context niet toegestaan

SQL Server ondersteunt momenteel geen subquery's voor CHECK BEPERKINGEN .

Zoals je hebt ontdekt, kan er probleem met CHECK-beperkingen waarbij UDF's worden gebruikt bij pogingen om de beperking van de subquery te omzeilen.

De alternatieve implementatiestrategieën voor beperkingen zijn procedureel geactiveerd en ingesloten procedure . Het eerste heeft de voorkeur omdat ze, net als declaratieve beperkingen, niet kunnen worden omzeild.

Het implementeren van een getriggerde procedurele strategie die goed is geoptimaliseerd en gelijktijdigheidsproblemen behandelt, is niet triviaal, maar nog steeds goed te doen. Ik raad het boek Toegepaste wiskunde voor databaseprofessionals Door Lex de Haan, Toon Koppelaars , hoofdstuk 11 (de codevoorbeelden zijn Oracle maar kunnen eenvoudig worden geport naar SQL Server).



  1. Laravel-volgorde van middleware (Middleware-prioriteit). Multi-tenant met Postgres

  2. In Flask-migrate ValueError:ongeldige interpolatiesyntaxis in verbindingsreeks op positie 15

  3. Oracle:Concat met scheidingsteken, maar alleen als beide operanden NIET NULL zijn

  4. Hoe wachtwoord versleutelen in Oracle?