java - 什么是预编译 SQL 语句?

标签 java sql jdbc precompile

这个问题在这里已经有了答案:





What does it mean when I say Prepared statement is pre-compiled?

(3 个回答)


6年前关闭。



PreparedStatementprecompiled声明,因此它将在运行时提高 jdbc 性能,但仍然对

  • 什么是预编译 SQL 语句?它能做什么?
  • 为什么预编译语句比通常的 SQL 语句更快?
  • 最佳答案

    任何数据库在运行 SQL 查询时都会使用以下步骤:

  • 将给定的 SQL 查询转换为 DB 格式
  • 检查语法
  • 检查语义
  • 准备执行计划
  • 将运行时值设置为查询
  • 运行查询并获取输出

  • 在 Statement 接口(interface)的情况下,每次查询执行都需要遵循以上 6 个步骤。但是,在 PreparedStatement 接口(interface)的情况下,步骤 1 到 4 只会执行一次,并且每次执行查询都会重复步骤 5 和 6。这使得 PreparedStatement 更快。

    希望这能回答你的问题...

    关于java - 什么是预编译 SQL 语句?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30587736/

    相关文章:

    java - Oracle 序列事务性

    java - JOOQ Mysql 整合问题

    java.sql.SQLException : Closed statement: next

    sql - 在 SQL Azure 中安全地更改列数据类型

    sql - Derby SQL时间戳算法和JDBC转义语法

    java - SQLite 和 JDBC : returns UnsatisfiedLinkError

    java - Byte-Buddy:方法拦截 InvoiceHandler 与 MethodDelegation 到 GeneralInterceptor

    java - 在刽子手程序中显示猜测的字母?

    java - 以小端方式写一个整数

    sql - 如何从按不同项目分组的结果集中计算最大(列)行