考试网 >> IT认证 >> Oracle >> Oracle指导 >> 在Oracle运行操作系统命令

在Oracle运行操作系统命令

发布时间:2006-06-28 09:46     点击:
分页:上一页  1 [2] 3 4 5  下一页

END IF;  

status := DBMS_PIPE.RECEIVE_MESSAGE(pipe_name, timeout);  

IF status <> 0 THEN  

RAISE_APPLICATION_ERROR(-20011,  

’Execute_system: Error while receiving.  

Status = ’ || status);  

END IF;  

/*获取返回结果*/  

DBMS_PIPE.UNPACK_MESSAGE(result);  

IF result <> ’done’ THEN  

RAISE_APPLICATION_ERROR(-20012,  

’Execute_system: Done not received.’);  

END IF;  

DBMS_PIPE.UNPACK_MESSAGE(command_code);  

DBMS_OUTPUT.PUT_LINE(’System command executed. result = ’ ||  

command_code);  

RETURN command_code;  

END execute_system;  

/*stop是让daemon停止*/  

PROCEDURE stop(timeout NUMBER DEFAULT 10) IS  

status NUMBER;  

BEGIN  

DBMS_PIPE.PACK_MESSAGE(’STOP’);  

status := DBMS_PIPE.SEND_MESSAGE(’daemon’, timeout);  

IF status <> 0 THEN  

RAISE_APPLICATION_ERROR(-20030,  

’stop: error while sending. status = ’ || status);  

END IF;  

END stop;  

END daemon;  

通过Sql*Plus运行以上语句,将为当前用户创建daemon程序包. 

2 创建在OS上运行的守护进程,监听由上面的daemon程序包发来的要求执行os命令的语句.以下Pro*C的代码,必须由pro*c先进行预编译.
分页:上一页  1 [2] 3 4 5  下一页
版权申明:未经书面授权请勿转载本站信息!!作品版权归所属媒体与作者所有!!
发表评论: 匿名发表 用户名: 查看评论
您将承担一切因您的行为、言论而直接或间接导致的民事或刑事法律责任
留言板管理人员有权保留或删除其管辖留言中的任意内容
本站提醒:不要进行人身攻击。谢谢配合。
在本站搜索相关信息
2003-2005 Ksw123.com All Rights Reserved. - TOP
Copyright © 2006 Ksw123.com. All rights reserved.中国考题网 版权所有