Ja, brug forberedte udsagn til alt.
-
De analyseres én gang.
-
De er immune over for SQL-injektionsangreb.
-
De er et bedre design, fordi du skal tænke på din SQL og hvordan den bruges.
Hvis du tror, de kun er brugt én gang, ser du ikke på det store billede. En dag vil dine data eller din applikation ændre sig.
Rediger.
Hvorfor får forberedte udsagn dig til at tænke over din SQL?
-
Når du samler en streng (eller blot udfører en bogstavelig tekstblok), opretter du ikke en ny
PreparedStatement
objekt. Du udfører bare SQL -- det kan gøres meget afslappet. -
Når du skal oprette (og gemme) en
PreparedStatement
, du skal tænke lidt mere over indkapsling, ansvarsfordeling. Forberedelsen af en sætning er en tilstandsfuld hændelse forud for enhver SQL-behandling.
Ekstraarbejdet er lille, men ikke ubetydeligt. Det er det, der får folk til at begynde at tænke på ORM og et datacachelag, og sådan noget for at optimere deres databaseadgang.
Med Prepared statements er databaseadgang mindre tilfældig, mere tilsigtet.