一,创建存储过程,查询当前用户的全文索引,并更新索引
create or replace procedure P_SYNC_FULL_TEXT_INDEX
IS
sIndexName USER_INDEXES.INDEX_NAME %TYPE;
CURSOR cCursor IS
SELECT INDEX_NAME
FROM USER_INDEXES
WHERE ITYP_OWNER = 'CTXSYS' AND
STATUS = 'VALID';
BEGIN
OPEN cCursor;
LOOP
FETCH cCursor INTO sIndexName;
EXIT WHEN cCursor%NOTFOUND;
CTXSYS.CTX_DDL.SYNC_INDEX(sIndexName);
END LOOP;
CLOSE cCursor;
END P_SYNC_FULL_TEXT_INDEX;
2,创建job,oracle定时执行存储过程(命令窗口中)
1,
创建JOBSQL> variable job1 number; -- var job1 number;也可以
SQL>
SQL> begin
2 dbms_job.submit(:job1,'test;',sysdate,'sysdate+1/1440'); --每天1440分钟,即一分钟运行test过程一次 test--存储过程.注意:存储过程名后加";"
3 end;
4 /
2,开启job
begin
sys.dbms_job.run([job名]);--job名:上面语句执行成功后返回的一个数字
end;
/