1.什么是prepareStatement
- prepareStatement是表示预编译的 SQL 语句的对象。
2.为什么使用prepareStatement
1.以前的statement的执行,是先拼接sql语句然后在一起执行。在这种情况下,如果sql语句中的变量带有了数据库的关键字,那么一并认为是是关键字,而不是普通的字符串。
2.使用prepareStatement时,预先处理给定的SQL语句并且对其进行语法检查,在SQL语句中使用?作为占位符来替代后续传进来的变量,后面进来的变量将会被看成是字符串而不会产生任何的关键字。
3.基本语法
- 使用statement
public void login(String username,int password) {
Connection conn = null;
Statement st = null;
ResultSet rs = null;
PreparedStatement ps = null;
try{
conn = JDBCUtil.getConn();
st = conn.createStatement();
String sql = "select * from student where name='"+username+"' and age = '"+password+&#