PreparedStatement批处理与Statement批处理之间的区别

Юра*_*чук 2 java jdbc

我现在正在学习JDBC,我已经知道PreparedStatement和Statement之间的区别.PreparedStatement是预先编译的并且允许您设置参数,但是在工作面试中我被问到关于PreparedStatement批处理和Statement批处理之间的区别的问题?

Mar*_*eel 8

a Statement和批处理执行之间的区别PreparedStatement是,Statement批处理可以包含不同的语句(只要它们是不生成结果集的语句),例如单个批处理可以包含各种表,删除,更新,并且 - 不是在所有JDBC驱动程序实现AFAIK中 - 甚至不是DDL语句.

另一方面,PreparedStatement批处理执行涉及单个语句,批处理包含要为该语句执行的多组参数值.也就是说,每个批处理条目定义用于准备语句的参数的值.

简而言之:

  • Statement:批处理可以包含很多不同的语句
  • PreparedStatement:单个语句,多组参数值