oracle存儲過程,sql語句執行時間


create or replace procedure sum_info is 
	i integer;
	temp1 varchar2(50);
	temp2 varchar2(50);
	t1 date;
	t2 date;
	v_sql varchar2(100);
	v_sqm varchar2(100);
	u_name t_temp.u_name%TYPE;
	t_name t_temp.t_name%TYPE;
	c_name t_temp.c_name%TYPE;
	cursor tb_list is 
	select u_name,t_name,c_name from t_temp;
begin
	open tb_list;
LOOP
	t1:=sysdate;
	fetch tb_list into u_name,t_name,c_name;
	v_sql:='select min('||c_name||') from '||u_name||'.'||t_name;
	v_sqm:='select max('||c_name||') from '||u_name||'.'||t_name;
	--dbms_output.put_line(v_sql);
	execute immediate v_sql into temp1;
	execute immediate v_sqm into temp2;
	t2:=sysdate;
	i:=round(to_number(t2-t1)*24*60*60);
	insert into t_ret values(u_name,t_name,c_name,temp1,temp2,i);
	commit;
	exit when tb_list%notfound;
end LOOP;
	close tb_list;
end;

  

編寫shell腳本執行存儲過程

vi xx.sh

sqlplus system/oracle <<EOF
exec  sum_info ();
exit
EOF

  

Oracle 存儲過程 延遲執行 DBMS_LOCK.SLEEP(60);

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM