DBMS_DATA_TOOLS_JOBS 程序包参考
本章提供有关在 Data Studio 中与作业功能一起使用的软件包的信息。DBMS_DATA_TOOLS_JOBS 子程序摘要主题还介绍了 DBMS_DATA_TOOLS_JOBS 程序包中包含的过程。
- DBMS_DATA_TOOLS_JOB 子程序摘要
DBMS_DATA_TOOLS_JOB程序包提供了用于 Data Studio 工具套件中作业功能的调度函数和过程的集合。
父主题:作业功能
DBMS_DATA_TOOLS_JOB 子程序概要
DBMS_DATA_TOOLS_JOB 软件包提供与 Data Studio 工具套件中的作业功能一起使用的调度函数和过程的集合。
DBMS_DATA_TOOLS_JOB 程序包子程序
下表列出了 DBMS_DATA_TOOLS_JOB 子程序并简要介绍了这些子程序。
表 22-2 DBMS_DATA_TOOLS_JOB 子程序的姓名和说明
| 子程序 | 说明 |
|---|---|
| 创建作业过程 | 此过程将创建新作业。 |
| 删除作业过程 | 从调度程序中删除作业。 |
| 重命名作业过程 | 使用所需的名称重命名作业。 |
| 更新作业过程 | 修改现有作业的属性。 |
| 运行过程 | 无论您定义了什么计划,都立即运行作业。 |
| 停止作业过程 | 停止正在运行的作业。这样可以正常终止作业,如果需要,可以强制停止该作业。 |
安全注意事项
不要将敏感数据(如密钥、持有人令牌、密码、私钥、签名 URL 或其他凭证)直接放置在作业步骤 URL、请求主体或报告配置中。这些值可以随职务定义一起存储,然后检索。使用数据库身份证明或命名的身份证明进行验证。
CREATE_JOB 过程
此过程将创建一个作业。如果通过将已启用属性设置为 TRUE 来创建已启用的作业,则调度程序会根据其调度自动运行作业。如果禁用创建作业,则在您使用“启用作业”功能启用该作业之前,该作业不会运行。
语法
dbms_data_tools_job.create_job(
job_name in varchar2,
description in varchar2,
steps in clob,
owner in varchar2 default null,
start_date IN TIMESTAMP WITH TIME ZONE DEFAULT NULL,
repeat_interval IN VARCHAR2 DEFAULT NULL,
end_date IN TIMESTAMP WITH TIME ZONE DEFAULT NULL,
job_class IN VARCHAR2 DEFAULT NULL,
enabled IN BOOLEAN DEFAULT FALSE,
reporting in clob default null);
CREATE_JOB 过程参数
表 22-3 CREATE_JOB 过程参数
| Parameter (参数) | 说明 |
|---|---|
| 作业名称 | 要分配给作业的名称。如果未指定 job_name,则会生成错误。
|
| 说明 | 这是指为职务设置的其他信息。 |
| 步骤 | 这是指 Data Studio 工具所执行的包含作业的各种任务。
Steps 是一个 JSON 数组。每个数组元素都是 JSON 对象。以下是适用于所有对象的 JSON 元素:
每个对象类型都有一些其他元素,具体取决于类型。 data_load:
smart_table:
procedure:
注意: 对于 HTTP 步骤,请勿在 URL 或请求正文中放置敏感数据。使用数据库身份证明或命名的身份证明进行验证。 |
| 所有者 |
它是在其中创建作业的方案。如果在未指定方案的情况下创建作业,则所有者将是执行 |
| 开始日期 |
此属性指定计划开始此作业的第一个日期和时间。如果 对于使用日历表达式指定重复间隔的重复作业, 调度程序无法保证作业在确切的时间执行,因为系统可能超载,因此资源不可用。 |
| 重复时间间隔 |
此属性指定窗口重复的频率。它使用调度程序日历语法来表示。有关详细信息,请参阅计算语法。 PL/SQL 表达式不能用于指定窗口的重复间隔。 通过对该表达式求值可以确定窗口下次打开的时间。如果未指定 |
| 结束日期 |
此属性指定作业过期且不再运行的日期和时间。
end_date 的值,除非您指定 stop job,否则作业将永远重复。
|
| 作业类 | 与此作业关联的类。 |
| 是否启用? | 此属性指定是否已启用创建作业。可能的设置是 TRUE 或 FALSE。默认情况下,此属性设置为 FALSE,因此,将作业创建为已禁用。禁用的作业表示已捕获有关作业的元数据,并且作业作为数据库对象存在。但是,调度程序会忽略作业,并且作业协调程序不会将其选取进行处理。要使作业协调程序处理作业,必须启用作业。可以通过选择 Enable Job 图标来启用作业。
|
| 报告 | 此属性通过“作业”功能中的“报表”按钮指定作业执行详细信息。
这是一个 JSON 对象,类似于
dbms_live_feed 的报告参数。它可以具有以下元素:
这四个元素中的每个元素都可以在 注意: 请勿在报告配置中包括敏感数据。 |
DELETE_JOB 过程
此过程将删除作业。
语法
dbms_data_tools_job.delete_job(
job_name in varchar2,
owner in varchar2 default null);DELETE_JOB 过程参数
表 22-4 DELETE_JOB 过程参数
| Parameter (参数) | 说明 |
|---|---|
| 作业名称 | 要分配给作业的名称。如果未指定 job_name,则会生成错误。
|
| 所有者 |
它是在其中创建作业的方案。如果在未指定方案的情况下创建作业,则所有者将是执行 |
RENAME_JOB 过程
此过程将重命名作业。
语法
dbms_data_tools_job.rename_job(
old_job_name in varchar2,
new_job_name in varchar2,
owner in varchar2 default null);RENAME_JOB 过程参数
表 22-5 RENAME_JOB 过程参数
| Parameter (参数) | 说明 |
|---|---|
| 旧作业名 | 现有作业的名称。 |
| 新作业名 |
新作业名称。 |
| 所有者 |
它是在其中创建作业的方案。 |
UPDATE_JOB 过程
此过程将更新任何现有作业属性。
语法
dbms_data_tools_job.update_job(
job_name IN VARCHAR2,
owner IN VARCHAR2 DEFAULT NULL,
description IN VARCHAR2 DEFAULT NULL,
steps IN clob DEFAULT NULL,
start_date IN TIMESTAMP WITH TIME ZONE DEFAULT NULL,
repeat_interval IN VARCHAR2 DEFAULT NULL,
end_date IN TIMESTAMP WITH TIME ZONE DEFAULT NULL,
job_class IN VARCHAR2 DEFAULT NULL,
enabled IN BOOLEAN DEFAULT NULL,
reporting IN clob DEFAULT NULL);UPDATE_JOB 过程参数
表 22-6 UPDATE_JOB 过程参数
| Parameter (参数) | 说明 |
|---|---|
| 作业名称 | 要更新的作业的名称。 |
| 所有者 |
它是在其中更新作业的方案。 |
| 说明 | 要应用的更新说明。 |
| 步骤 | 要更新的新步骤。
注意: 对于 HTTP 步骤,请勿在 URL 或请求正文中放置敏感数据。使用数据库身份证明或命名的身份证明进行验证。 |
| 开始日期 | 新起始日期。 |
| 重复时间间隔 | 更新的重复间隔。 |
| 结束日期 | 更新后的结束日期。 |
| 作业类 | 更新的作业类。 |
| 是否启用? | 可以启用或禁用它。 |
| 报告 | 更新的报告属性。
注意: 请勿在报告配置中包括敏感数据。 |
运行过程
此过程会立即运行作业。
如果作业已启用,调度程序将自动运行该作业。无需调用 RUN_JOB 以根据作业调度运行作业。使用 RUN_JOB 可在其正常调度之外运行作业。
语法
dbms_data_tools_job.run(
job_name in varchar2,
owner in varchar2 default null,
use_current_session in number default null,
options in clob default null);RUN 过程参数
表 22-7 RUN 过程参数
| Parameter (参数) | 说明 |
|---|---|
| 作业名称 |
作业名称或以逗号分隔的条目列表,其中每个作业是现有作业的名称,前面可以选择带有方案名称和点分隔符。 如果指定一个多目标作业,该作业将在所有目标上运行。在这种情况下, |
| 所有者 |
它是在其中运行作业的方案。 |
| 使用当前会话 |
这指定作业运行是否应发生在调用该过程的同一会话中。 当
use_current_session 设置为 TRUE 时:
将
use_current_session 设置为 FALSE 时:
|
| 选项 |
STOP_JOB 过程
此过程将停止当前正在运行的作业或作业类中的所有作业。
停止作业后,一次性作业的状态将设置为 STOPPED,而重复作业的状态将设置为 SCHEDULED 或 COMPLETED,具体取决于作业的下次运行是否已调度。
语法
dbms_data_tools_job.stop_job(
job_name in varchar2,
owner in varchar2 default null,
force in boolean default false);STOP_JOB 过程参数
表 22-8 STOP_JOB 过程参数
| Parameter (参数) | 说明 |
|---|---|
| 作业名称 |
要停止的作业的名称。它是现有作业的名称,可以选择在前面加上方案名称和点分隔符。 |
| 所有者 |
它是要在其中停止作业的方案。 |
| 强制 |
如果 如果 使用 |