解决方法
创建PreparedStatements可能涉及或可能不涉及sql语法验证或甚至完全依赖于所使用的JDBC驱动程序的DB服务器往返.一些司机会做一个往返或验证,其他人不会.
所以在一些JDBC驱动程序上,PreparedStatement不比普通语句“准备”. (换句话说:使用一些JDBC驱动程序,PreparedStatement表示服务器端资源(类似于Connection),而在其他JDBC驱动程序上,它是一个纯客户端构造).
然而,一个重要的区别是,PreparedStatement将帮助您以一种方式处理动态参数值,以确保避免任何转义或格式化问题,如果您尝试将值插入sql语句字符串中手动将其执行使用一个正常的声明.