
# DBE_UTILITY
#### 接口介绍
高级功能包DBE_UTILITY支持的所有接口请参见[表1]。
 表1DBE_UTILITY 
| 接口名称                                                                                                                                                                                                                             | 描述                   |
|:---|:---|
| [DBE_UTILITY.FORMAT_ERROR_BACKTRACE]                                                                       | 输出存储过程异常的调用堆栈。       |
| [DBE_UTILITY.FORMAT_ERROR_STACK] | 输出存储过程异常的具体信息。       |
| [DBE_UTILITY.FORMAT_CALL_STACK]  | 输出存储过程的调用堆栈。         |
| [DBE_UTILITY.GET_TIME]                                                                                                                               | 输出当前时间，一般用于做差得到执行时长。 |
   
- DBE_UTILITY.FORMAT_ERROR_BACKTRACE
  存储过程FORMAT_ERROR_BACKTRACE返回在执行过程中出现错误时，出现错误位置的调用堆栈。DBE_UTILITY.FORMAT_ERROR_BACKTRACE函数原型为：
  ```
  DBE_UTILITY.FORMAT_ERROR_BACKTRACE()
  RETURN TEXT;
  ```
  

- DBE_UTILITY.FORMAT_ERROR_STACK 存储过程FORMAT_ERROR_STACK返回在执行过程中出现错误时，出现错误位置的具体信息。DBE_UTILITY.FORMAT_ERROR_STACK函数原型为：
  ```
  DBE_UTILITY.FORMAT_ERROR_STACK()
  RETURN TEXT;
  ```
  

- DBE_UTILITY.FORMAT_CALL_STACK 存储过程FORMAT_CALL_STACK设置输出函数调用堆栈。DBE_UTILITY.FORMAT_CALL_STACK函数原型为：
  ```
  DBE_UTILITY.FORMAT_CALL_STACK()
  RETURN TEXT;
  ```
  

- DBE_UTILITY.GET_TIME
  存储过程GET_TIME设置输出时间，通常用于做差，单独的返回值没有意义。DBE_UTILITY.GET_TIME函数原型为：
  ```
  DBE_UTILITY.GET_TIME()
  RETURN BIGINT;
  ```
  
 
#### 示例
```
CREATE OR REPLACE PROCEDURE test_get_time1() 
AS
declare
    start_time  bigint;
    end_time  bigint;
BEGIN
    start_time:= dbe_utility.get_time ();
    pg_sleep(1);
    end_time:=dbe_utility.get_time ();
    dbe_output.print_line(end_time - start_time); 
END;
/
```
