Ver Mensaje Individual
  #2 (permalink)  
Antiguo 10/01/2014, 01:20
Avatar de rgf1987
rgf1987
 
Fecha de Ingreso: diciembre-2012
Ubicación: Asturias
Mensajes: 269
Antigüedad: 11 años, 10 meses
Puntos: 22
Respuesta: [Consulta] ResultSet o PrepareStatement

Buenos días,

efectivamente para evitar la inyección SQL se utiliza PrepareStatement, usarlo implica variar un poco la realización de la consulta, un ejemplo sería el siguiente, para hacer un insert en una BBDD

Código Java:
Ver original
  1. /*Creamos el prepare y  la sentencia SQL que deseamos ejecutar donde los parámetros vendrán identificados por interrogantes ? */
  2.         conexion.prepareStatement("insert into tabla values (?,?,?)");
  3. //Y para cada uno de los ? debemos cargar un parámetro usando uno de los métodos set que irán variando en función del tipo de dato que queremos añadir
  4. p.setInt(1, 2);
  5. p.setString(2, "Loquesea");
  6. p.setString(3, "Loquesea2");
  7. //De esta forma el insert que se estaría realizando sería el siguiente
  8. insert into tabla values(1, "Loquesea", "Loquesea2");

Con permiso de chuidiang, en su web tienes un apartado donde te viene todo esto bien explicado, además de mencionarte las ventajas y otras utilidades del PreparedStatement

http://www.chuidiang.com/java/mysql/...java-mysql.php