sql >> Database >  >> RDS >> Sqlserver

Best practice tussen deze twee zoekopdrachten

Geparametriseerde zoekopdrachten en IN clausule zijn eigenlijk niet triviaal samen geïmplementeerd als uw IN lijst verandert van tijd tot tijd.

Lees deze SO-vraag en antwoorden:Een SQL IN-clausule parametreren

Parameters zijn, door hun ontwerp, slechts één waarde. Al het andere dan dat moet handmatig worden geïmplementeerd, rekening houdend met beveiligingsproblemen, zoals SQL-injectie .

Vanuit prestatieperspectief heeft u betere prestaties voor geparametriseerde query's, vooral als dezelfde query herhaaldelijk wordt uitgevoerd, maar met verschillende parameterwaarden. Als u echter een dynamische IN lijst (soms 2 items, soms 3), krijgt u mogelijk niet het voordeel van het gebruik van geparametriseerde zoekopdrachten.

Verlies de hoop echter niet. Sommige mensen hebben dat kunnen implementeren (geparametriseerde zoekopdrachten en IN clausule). Het is, nogmaals, echter niet triviaal.



  1. MySQL SP's en evenementen worden automatisch teruggedraaid door Google Cloud SQL

  2. Dapper en Postgresql gebruiken - gegevenstype citext

  3. Converteer lokale TIME_STAMP naar UTC-tijd

  4. Wat doet deze query om een ​​door komma's gescheiden lijst van SQL Server te maken?