Red de conocimiento informático - Problemas con los teléfonos móviles - ps.executeUpdate(); ¿Qué significa?

ps.executeUpdate(); ¿Qué significa?

Cuando los datos se insertan exitosamente en la base de datos, esto devolverá un número mayor que 1 para indicar que los datos se insertaron exitosamente en la base de datos.

El momento en que se realizó la inyección SQL ocurrió, el momento en que ocurrió la inyección de SQL En la etapa de precompilación de SQL, cuando el SQL compilado no generará la inyección de SQL y se usa JDBC para operar los datos, el objeto precompilado de PreparedStatement precompilará el SQL entrante.

Entonces, cuando la cadena de identificación entrante es "update ft_proposal set id = 3; drop table ft_proposal;" esta situación provocará que la inyección SQL elimine la tabla ft_proposal.

Declaraciones precompiladas

Además de utilizar declaraciones precompiladas, otro método de implementación puede ser utilizar procedimientos almacenados. Los procedimientos almacenados en realidad son una colección de declaraciones SQL. Todas las declaraciones SQL precompiladas se compilan y se almacenan en la base de datos.

Cuando el parámetro entrante es 3; elimine el usuario de la tabla; cuando se ejecuta, puede ver la declaración SQL impresa: seleccione el nombre de usre donde id =?; , porque la capa inferior de mybatis implementa la precompilación.