就一点主要区别
PreparedStatement可以以参数的形式添加数据到SQL中,这样的话,就不用自己去处理诸如字符串,日期等类型的数据了。

解决方案 »

  1.   

    后者在处理带参数的SQL时效率高于前者!前者每次运行的时候都要检查SQL正确性而后者只用检查一次其他由参数决定!
      

  2.   

    如果SQL不带参数,前者较好!
      

  3.   

    1 Statment对象每次执行SQL语句都将该语句传递给数据库。多次执行的话效率较低。这时可以采用PreparedStatment对象,如果数据库支持预编译,它可以将SQL传递给数据库后先作预编译。以后每次执行这个SQL语句的时候,速度会快很多。因为PreparedStatment是Statment的子类,跟Statment对象具有一样的方法。
      

  4.   

    Statement的速度比PreparedStatement低,还有就是后者可以传参数进去,也可以执行存储过程,前者好象只能实现select,update,insert,delete语句~~
      

  5.   

    1,Statement 接口提供了执行语句和获取结果的基本方法。PreparedStatement 接口添加了处理 IN 参数的方法; 2,对于同一条语句的多次执行,Statement每次都要把SQL语句发送给数据库,这样做效率明显不高,而如果数据库支持预编译,PreparedStatement可以先把要执行的语句一次发给它,然后每次执行而不必发送相同的语句,效率当然提高.
      

  6.   

    Statement执行SQL的时候每次都要编译SQL
    PreparedStatement对SQL是预编译的,第一次编译SQL会比较慢,以后就不用在编译SQL了.
      

  7.   

    补充一点 PreparedStatement 可以防止sql注入