Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (中文) » SQL Anywhere 服务器 - SQL 参考 » 系统对象 » 系统过程 » 按字母顺排序的系统过程列表

 

sa_procedure_profile_summary 系统过程

报告已经在数据库中执行的所有过程、函数、事件或触发器的执行时间的汇总信息。此过程为这些对象提供的信息与 Sybase Central 中 [分析] 选项卡上的信息相同。

语法
sa_procedure_profile_summary(  
  [ filename
  [, save_to_file ] ]
)
参数
  • filename   使用此可选的 LONG VARCHAR(128) 参数指定应将分析信息保存到的文件,或应从其装载分析信息的文件。有关保存和装载分析信息的详细信息,请参见以下的注释部分。

  • save_to_file   使用此可选的 INT(1) 参数指定是将汇总信息保存到文件,还是从先前保存的文件装载汇总信息。

结果集
列名 数据类型 说明
object_type CHAR(1) 对象的类型。有关可能的对象类型的列表,请参见以下的注释部分。
object_name CHAR(128) 存储过程、函数、事件或触发器的名称。
owner_name CHAR(128) 对象的所有者。
table_name CHAR(128) 与触发器关联的表(对于其它对象类型,该值为 NULL)。
executions UNSIGNED INTEGER 每个过程的执行次数。
millisecs UNSIGNED INTEGER 过程的执行时间,以毫秒计。
foreign_owner CHAR(128) 拥有系统触发器外表的数据库用户。
foreign_table CHAR(128) 系统触发器外表的名称。
注释

此过程可用于:

  • 返回当前汇总信息   要实现此目的,可以只调用该过程,而不指定任何参数。

  • 将当前汇总信息保存到文件   要实现此目的,必须包括 filename 参数并将 save_to_file 参数指定为 1。

  • 从文件装载存储的汇总信息   要实现此目的,必须包括 filename 参数并将 save_to_file 参数指定为 0(或保留不变,因为缺省值为 0)。当以此方式使用该过程时,创建装载文件的数据库必须是正从其运行该过程的同一数据库;否则,结果可能不可用。

由于此过程返回有关存储过程、函数、事件和触发器的使用频率和效率的信息,因此您可以使用此信息来调整较慢的过程以提高数据库性能。

必须先启用分析,之后才能分析数据库。请参见启用过程分析

结果集的 object_type 字段可以是:

  • P   存储过程

  • F   函数

  • E   事件

  • T   触发器

  • S   系统触发器

  • C   ON UPDATE 系统触发器

  • D   ON DELETE 系统触发器

如果想得到每个执行的逐行详细信息(而不是汇总信息),请改用 sa_procedure_profile 过程。

权限

需要 DBA 权限

副作用

另请参见
示例

以下语句返回已经在数据库中执行的所有过程、函数、事件或触发器的执行时间:

CALL sa_procedure_profile_summary( );

以下语句返回与以上示例相同的汇总信息,并将其保存到名为 summaryinfo.txt 的文件:

CALL sa_procedure_profile_summary( "summaryinfo.txt", 1 );

以下任一语句均可用来从名为 summaryinfoOLD.txt 的文件装载存储的汇总信息:

CALL sa_procedure_profile_summary( "summaryinfoOLD".txt, 0 );
CALL sa_procedure_profile_summary( "summaryinfoOLD.txt" );