1.基本操作:
2.Statement、PreparedStatement、CallableStatement:
1.Statement:执行不带参数的简单SQL语句,并返回结果对象
每次执行SQL语句,数据库都要编译该语句。
2.PreparedStatement:表示预编译的SQL语句对象,
用于执行带参数的预编译SQL。
3.CallableStatement:提供用来调用数据库存储过程的接口,
若有输出参数需注册,说明是输出参数
3.Statement、PreparedStatement区别:
1.PreparedStatement效率更高,用它执行SQL命令时,命令会被数据库编译解析,
并放到命令缓冲区,若后面再执行同一个PreparedStatement对象,
缓冲区中科发现预编译的命令,会在解析但不会在编译,可重用。
2.代码可读性更好。
1.Statement:
stmt.executeUpdate("insert into t(col1,col2) values('"+var1+"','"+var2+"'')");
2.PreparedStatement:
perstmt = con.prepareStatement("insert into tb_name(col1,col2) values (?,?)");
perstmt.setString(1,var1);
perstmt.setString(2,var2);
3.安全性更好:可防止SQL注入攻击
避免类似“select * from user where name='aa' and password='bb' or 1=1”
这种注入