掌握的Oracle定时任务
一、在PLSQL中创建表:
create table HWQY.TEST
(
CARNO VARCHAR2(30),
CARINFOID NUMBER
)
二、在PLSQL中创建存储过程:
create or replace procedure pro_test
AS
carinfo_id number;
BEGIN
select s_CarInfoID.nextval into carinfo_id
from dual;
insert into test(test.carno,test.carinfoid) values(carinfo_id,''123'');
commit;
end pro_test;
三、在SQL命令窗口中启动任务:
在SQL>后执行:
VARIABLE jobno number;
begin
DBMS_JOB.SUBMIT(:jobno,
''pro_test;'',
SYSDATE,''sysdate+1/24/12'');
commit;
end;
/
提交后提示:
英文代码
四、跟踪任务的情况(查看任务队列):
SQL> select job,next_date,next_sec,failures,broken from user_jobs;
JOB NEXT_DATE NEXT_SEC FAILURES BROKEN
---------- ----------- ---------------- ---------- ------
1 2008-2-22 ?01:00:00 0 N
说明有一个任务存在了。
执行select * from test t查看定时任务的结果。可以看出定时任务是正常执行了的。
五、停止已经启动的定时任务:
先执行select job,next_date,next_sec,failures,broken from user_jobs;
以查看定时任务的job号。
在SQL>中执行下面的语句停止一个已经启动的定时任务:
begin
dbms_job.remove(1);
commit;
end;
/
表示停止job为1的任务。
执行后显示如下:
PL/SQL procedure successfully completed
六、查看进程数:
show parameter job_queue_processes;
必须>0,否则执行下面的命令修改:
alter system set job_queue_processes=5;
七、再创建一个任务(每5分钟执行一次):
variable jobno number;
begin
dbms_job.submit(:jobno, ''pro_test;'',
sysdate,''sysdate+1/24/12'');
commit;
end;
/
建立一个定时任务后,在PLSQL中查看JOB,它的sql语句类似的是如下:
begin
sys.dbms_job.submit(job => :jobno,
what => ''pro_test;'',
next_date => to_date(''21-02-2008 17:37:26'', ''dd-mm-yyyy hh24:mi:ss''),
interval => ''sysdate+1/24/12'');
commit;
end;
/
所以,创建一个任务的完整的格式是:
variable jobno number;
begin
相关文档:
oracle表空间操作详解
1
2
3作者: 来源: 更新日期:2006-01-04
5
6
7建立表空间
8
9CREATE TABLESPACE data01
10DATAFILE '/ora ......
案例说明:
有A,B两台oracle数据库,都为10g,现在有一个A数据库中one表的几条数据要插入到B数据库中的one表?
在网上查阅了一下,可以通过在A上建立dblink,当然在B机上建立也是一样的。
打开sqlplus终端,或者任意的oracle客户端环境,执行以下SQL
create database link 链接名
connect t ......
应个报表要求做个
时间 双色球, 胜负彩。。。。。
200905 销量 销量
200906 销量 销量
200907 &n ......
在程序的开发过程中,处理分页是大家接触比较频繁的事件,因为现在软件基本上都是与数据库进行挂钓的。但效率又是我们所追求的,如果是像原来那样把所有满足条件的记录全部都选择出来,再去进行分页处理,那么就会多多的浪费掉许多的系统处理时间。为了能够把效率提高,所以现在我们就只选择我们需要的数据,减少数据 ......