JDBC中的Statement和PreparedStatement

时间:2013-01-29 05:05:12

标签: java sql java-ee prepared-statement

  

可能重复:
  Difference between Statement and PreparedStatement

我对JDBC中的Statement和PreparedStatement感到困惑。PreparedStatement是Statement的版本吗?或者其他任何不同之处?任何人都可以清楚这个问题。感谢。

1 个答案:

答案 0 :(得分:2)

来自Java官方教程的Using Prepared Statements

  

有时使用PreparedStatement对象更方便   将SQL语句发送到数据库。这种特殊类型的陈述   来自更一般的类,Statement,你已经   知道。

     

如果要多次执行Statement对象,通常会这样做   减少执行时间以改为使用PreparedStatement对象。

     

PreparedStatement对象的主要特征是,与a不同   Statement对象,在创建时给出一个SQL语句。该   这样做的好处是,在大多数情况下,会发送此SQL语句   DBMS立即编译。结果,   PreparedStatement对象不仅包含SQL语句,还包含SQL   已预编译的语句。这意味着当   执行PreparedStatement,DBMS就可以运行了   PreparedStatement SQL语句,无需先编译它。

     

尽管PreparedStatement对象可以用于SQL语句   没有参数,您可能最常使用它们用于SQL语句   拿参数。使用SQL语句的优点   参数是您可以使用相同的语句并提供它   每次执行时都会有不同的值。这方面的例子在   以下部分。