FLUSH OPTIMIZATION PROFILE CACHE 语句

可以使用同一优化概要文件来编译多个语句。

为了提高优化概要文件处理效率,将在首次使用优化语句时处理优化概要文件,并将输出存储在优化概要文件高速缓存中。 对优化概要文件的后续引用使用优化概要文件高速缓存中的已处理版本。

当 SYSTOOLS.OPT_PROFILE 已更新。 从高速缓存中除去旧版本时,将在优化使用优化概要文件的后续语句时使用新版本。

调用

此语句可以嵌入在应用程序中,也可通过动态 SQL 语句来发出。 它是可动态准备的可执行语句。

授权

语句的授权标识所拥有的特权必须包含 SQLADM 或 DBADM 权限 (SQLSTATE 42502)。

语法

Read syntax diagramSkip visual syntax diagramFLUSH OPTIMIZATION PROFILE CACHE ALLoptimization-profile-name

描述

optimization-profile-name
指定要从优化概要文件高速缓存中清空的优化概要文件的名称。 如果指定的名称未限定,那么 CURRENT DEFAULT SCHEMA 寄存器的值将用作隐式限定符。
全部
指定从优化概要文件高速缓存中清空所有活动数据库分区上的所有概要文件。

注意

  • FLUSH OPTIMIZATION PROFILE CACHE 语句从优化概要文件高速缓存中除去所有或单个优化概要文件。 它还会导致使用该优化概要文件准备的任何高速缓存动态 SQL 语句的逻辑失效。
  • 对同一 SQL 语句发出下一个请求时,将重新生成任何已失效的动态计划的新存取方案。
  • 必须再次显式绑定引用此语句从优化概要文件高速缓存中除去的优化概要文件的程序包,以允许生成新的存取方案。

示例

  • 示例 1: 从优化概要文件高速缓存中清空优化概要文件 "Rick". "Foo"。
       SET CURRENT SCHEMA = '"Rick"' 
       FLUSH OPTIMIZATION PROFILE CACHE "Foo" 
  • 示例 2: 优化概要文件 JOHN.ALL 。
       SET CURRENT SCHEMA = '"Rick"' 
       FLUSH OPTIMIZATION PROFILE CACHE JOHN.ALL 

消息

  • 如果优化概要文件高速缓存为空,或者如果优化概要文件高速缓存中不存在指定的优化概要文件 (显式或隐式指定) ,那么不会发出任何错误。