Sí, utilice declaraciones preparadas para todo.
Se analizan una vez.
Son inmunes a los ataques de inyección SQL.
Son un mejor diseño ya que hay que pensar en su SQL y cómo se utiliza.
Si crees que solo se usan una vez, no estás viendo la imagen completa. Algún día, sus datos o su aplicación cambiarán.
Editar.
¿Por qué declaraciones preparadas hará pensar en su SQL?
al colocar una cadena (o simplemente ejecutar un bloque literal del texto) no va a crear un nuevo PreparedStatement
objeto. Simplemente estás ejecutando SQL, se puede hacer de manera muy casual.
Cuando tiene que crear (y guardar) un PreparedStatement
, tiene que pensar un poquito más acerca de la encapsulación, la asignación de responsabilidades. La preparación de una declaración es un evento con estado antes de realizar cualquier procesamiento de SQL.
El trabajo adicional es pequeño, pero no es insignificante. Es lo que hace que las personas comiencen a pensar en ORM y en una capa de caché de datos, y cosas así para optimizar su acceso a la base de datos.
Con declaraciones preparadas, acceso a base de datos, es decir, más intencional menos casual.
Puede seguir adelante y usar Hibernate (u otro ORM): entonces puede (principalmente) evitar mezclar SQL con su código Java por completo. Hay una pequeña curva de aprendizaje con ella (especialmente colecciones), pero hay muchos documentos y tutoriales a su alrededor. Si sus datos existentes ya están estructurados como beans Java, Hibernate puede usarlos: incluso puede generar tablas basadas en sus clases, o puede crear sus beans Java basados en tablas de bases de datos. – monojohnny