-6

Acutually 我不了解 PrepareStatement 将如何提供比 Statement 更高的性能。

4

2 回答 2

3

来自Oracle 的文档

PreparedStatement 对象的主要特点是,与 Statement 对象不同,它在创建时被赋予一条 SQL 语句。这样做的好处是,在大多数情况下,此 SQL 语句会立即发送到 DBMS,并在其中进行编译。因此,PreparedStatement 对象不仅包含一条 SQL 语句,还包含一条已预编译的 SQL 语句。这意味着当 PreparedStatement 被执行时,DBMS 可以直接运行 PreparedStatement SQL 语句,而无需先编译它。

但是使用准备好的语句的最大原因是您不必清理输入并将它们格式化为字符串:所有准备好的语句 API 都以安全有效的方式为您完成。

于 2013-04-02T06:54:06.653 回答
1

每次使用时都会编译语句。PreparedStatement 是预编译的,因此您可以在后续请求中节省编译时间。这只是一个原因。

请查看他们的文档以了解更多差异。

于 2013-04-02T06:53:55.043 回答