---TEST JOB
------table
create table pro_test_tab(
id varchar2(36),
ms_content varchar2(200)
);
select * from ytpbl.pro_test_tab;
delete from pro_test_tab;
-------pro
create or replace procedure test_pro as
begin
insert into ytpbl.pro_test_tab values('tset1','test1');
dbms_output.put_line('insert OK');
commit;
end;
begin
test_pro;
end;
--test job1
declare job1 number;
begin
sys.dbms_job.submit(job1,'test_pro;',sysdate,'sysdate+1/(24*60*60)'); --每秒执行一次
commit;
end;
--tes job2
declare jobnum number;
begin
dbms_job.submit(jobnum,'test_pro;',trunc(SYSDATE+1)+1/24,'SYSDATE + 30/86400'); --30秒执行一次
commit;
end;
--start job
begin
dbms_job.run(401);
commit;
end;
--stop job
begin
dbms_job.broken(401,true);
commit;
end;
--remove job
begin
dbms_job.remove(387);
commit;
end;
-----
select * from user_jobs;
--查看正在运行的任务(不推荐使用,速度慢):
select * from dba_jobs_running;
/*job时间周期:
每天运行一次 'SYSDATE + 1'
每小时运行一次 'SYSDATE + 1/24'
每10分钟运行一次 'SYSDATE + 10/(60*24)'
每30秒运行一次 'SYSDATE + 30/(60*24*60)'
每隔一星期运行一次 'SYSDATE + 7'
INTERVAL :
每天重复执行一次 'SYSDATE + 1'
每周重复执行一次 'SYSDATE + 7'
每小时重复执行一次 'SYSDATE + 1/24'
每十分钟重复执行一次 'SYSDATE + 10/1440'
每30秒重复执行一次 'SYSDATE + 30/86400'
中止、启动job
begin dbms_job.broken(294,TRUE); end;
begin dbms_job.broken(294,FALSE); end;
*/
分享到:
相关推荐
标题和描述中提到的“大型项目Oracle sql,function,procedures,package,cursor,job”涉及的是Oracle数据库管理和开发的核心概念。以下是对这些概念的详细解释: 1. **SQL(Structured Query Language)**:SQL...
本文档主要讲述了使用 Oracle Job 调用存储过程的详细步骤和相关知识点。首先,作者描述了遇到的问题:实时采集系统每 5 分钟传送流量数据,但没有累计流量数据。为了解决这个问题,作者编写了一个存储过程 ...
Oracle数据库是世界上最广泛使用的数据库系统之一,其强大的功能和高效的数据管理能力深受企业青睐。在Oracle数据库中,存储过程和函数是重要的编程元素,用于执行复杂的数据库操作和业务逻辑。本篇文章将深入探讨这...
在Oracle数据库系统中,创建各种...通过理解和熟练使用这些Oracle对象,开发者能够构建复杂的数据库应用程序,优化查询性能,实现数据处理自动化,并确保数据一致性。Oracle学习的过程中,掌握这些概念和操作至关重要。
根据提供的标题、描述、标签及部分内容,我们可以提炼出Oracle数据库中的几个重要的知识点,这些知识点主要集中在存储过程(Stored Procedure)与函数(Function)的创建与使用上,同时也涉及到了游标(Cursor)的...
为了使上述存储过程能够按照预定的时间周期自动执行,我们需要使用Oracle提供的`DBMS_JOB`包来配置一个JOB任务。 ```sql BEGIN SYS.DBMS_JOB.SUBMIT( job => :job, what => 'BEGIN updatedateToNow; END;', ...
首先,使用`DBMS_SQL.OPEN_CURSOR`打开一个游标,然后使用`DBMS_SQL.PARSE`解析动态SQL,最后使用`DBMS_SQL.EXECUTE`执行SQL。这种方法适用于需要处理多行或多列返回的情况,以及需要处理复杂参数的场景。 【关于竖...
PROCEDURE pro_regulate_sal(var_job VARCHAR2, num_proportion NUMBER); -- 按照指定比例上调指定职位的工资 END pack_emp; / ``` ##### 2. 创建包体 ```sql CREATE OR REPLACE PACKAGE BODY pack_emp IS ...
以上内容概括了Oracle数据库中常见的操作,包括创建表、定义函数、使用游标、异常处理、存储过程定义与执行、包定义与调用以及合并操作等。这些知识点都是Oracle数据库开发与管理的重要组成部分,掌握它们有助于更...
使用`DBMS_JOB.SUBMIT`来提交作业,将作业编号存储在变量`job_num`中,指明要执行的存储过程`MY_Procedure`,并设定首次执行时间(`sysdate`)和下次执行的间隔(`sysdate+1`)。 ```sql DECLARE job_num NUMBER; ...
2. **使用DBMS_SQL包**:这是Oracle提供的一个用于处理动态SQL的强大工具包,它可以更好地控制执行过程,并且提供了更高级的安全特性,如SQL解析、执行和游标管理等功能。使用DBMS_SQL包可以显著提高安全性并减少SQL...
使用Oracle系统包 17.1 DBMS_OUTPUT 17.2 DBMS JOB 17.3 DBMS PIPE 17.4 DBMSAIERT 17.5 DBMS TRANSACTION 17.6 DBMS SESSION 17.7 DBMS ROWID 17.8 DBMSRLS 17.9 DBMS DDL ...
在Flex端,可以使用Flex提供的`DataGrid`组件结合自定义的分页控件来展示数据。具体步骤如下: 1. **获取数据**:首先通过HTTP请求调用后端接口,传递页码和每页记录数。 2. **展示数据**:根据返回的数据填充`...
上述例子不仅展示了如何在Oracle数据库中定义和使用REFCURSOR,而且还详细介绍了如何在.NET环境中调用这些存储过程并处理返回的结果集。这种方法大大提高了数据处理的灵活性和效率,是Oracle数据库中一项非常实用的...
(1) 了解Oracle的工作环境和基本使用方法。 (2) 练习标准SQL的数据操作,查询命令及其查询优化。 (3) 学会使用高级SQL命令,排序、分组、自连接查询等。 (4) 学会使用SQL*PLUS命令显示报表,存储到文件等。 【实验...
学习Oracle8i9i数据库基础,理解并熟练掌握存储过程和函数的使用,是成为一名合格的Oracle数据库管理员或开发者的关键步骤。这将帮助你更有效地管理和维护数据库,提升系统的稳定性和性能。同时,熟悉异常处理和包的...
- 使用游标(CURSOR)处理查询结果,逐条处理数据,适用于需要遍历多行记录的场景。 - PL/SQL中的异常处理(EXCEPTION)可以捕获和处理SQL执行时可能出现的错误。 4. Oracle数据库管理: - 表的创建、修改和删除...
- 异步处理:使用DBMS_JOB或DBMS_AQ进行后台任务调度和消息队列操作。 - 分区和索引:利用Oracle 10g的分区功能优化大表的性能,以及索引的创建和管理。 - 触发器(TRIGGER):自动响应数据库表上的DML操作,实现...
这段代码定义了一个游标类型 `type_cursor`,然后使用这个类型来检索员工信息和部门信息,并将其输出。 4. 使用存储过程来封装业务逻辑 在 PL/SQL 中,我们可以使用存储过程来封装业务逻辑。例如,在第四个 PL/SQL...