真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

oracle中怎么寫過程,oracle的使用教程

Oracle 中這個存儲過程怎么寫?

declare

成都創(chuàng)新互聯(lián)公司-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設、高性價比定日網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式定日網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設找我們,業(yè)務覆蓋定日地區(qū)。費用合理售后完善,十多年實體公司更值得信賴。

in_begin_time varchar2(20); --定義起始時間

in_end_time varchar2(20);--定義結束時間

begin

in_begin_time :='2012-01-01 00:00:00';--起始時間賦值

in_end_time :='2012-01-01 12:00:00';--結束時間賦值

while in_begin_time in_end_time --判斷

loop --循環(huán)

dbms_output.put_line(in_begin_time||','||to_char(to_date(in_begin_time,'yyyy-mm-dd hh24:mi:ss')+1/24,'yyyy-mm-dd hh24:mi:ss')); --輸出結果

in_begin_time := to_char(to_date(in_begin_time,'yyyy-mm-dd hh24:mi:ss')+1/24,'yyyy-mm-dd hh24:mi:ss');

end loop;

end;

dbms_output.put_line(in_begin_time||','||to_char(to_date(in_begin_time,'yyyy-mm-dd hh24:mi:ss')+1/24,'yyyy-mm-dd hh24:mi:ss'));這個地方其實是輸出結果,當然這里可以調(diào)用那兩個參數(shù)當你select語句里的變量

oracle存儲過程并且怎么寫

存儲過程(procedure):是一個命名了的語句塊,可以有0個或多個參數(shù)

語法:

create or replace procedure HelloWorld

as

begin

dbms_output.put_line('HelloWorld');

end;

調(diào)用存儲過程

* 命令調(diào)用 exec helloworld

* 語句塊調(diào)用

begin

helloworld;

end;

/

DELETE:

create or replace procedure del_emp01

is

begin

delete from emp01 where empno=7369;

end;

exec del_emp01;

create or replace procedure del_emp01(v_empno in emp01.empno%type)

is

begin

delete from emp01 wherer empno=v_empno;

end;

exec del_emp01(7521);

INSERT

create or replace procedure ins_emp01

(v_empno emp01.empno%type,v_ename emp01.ename%type)

as

begin

insert into emp01(empno,ename) values(v_empno,v_ename);

end;

exec ins_emp01(1000,'李四');

UPDATE

create or replace procedure upd_emp01

(v_empno emp01.empno%type,v_ename emp01.ename%type)

as

begin

update emp01 set ename=v_ename where empno=v_empno;

end;

exec upd_emp01(1000,'張三');

SELECT

create or replace procedure sel_emp01

(v_empno emp01.empno%type,v_emp01_data out emp01%rowtype)

as

begin

select * into v_emp01_data from emp where empno=v_empno;

end;

帶有輸出參數(shù)的存儲過程不能使用命令直接調(diào)用

只能由語句塊或程序調(diào)用(JAVA) ****************************************************************

declare

v_emp_data emp01%rowtype;

begin

sel_emp01(7499,v_emp_data);

dbms_output.put_line(v_emp_data.ename||' '||v_emp_data.sal);

end;

調(diào)用:

declare

v_emp_data emp01%rowtype;

begin

sel_emp01(7499,v_emp_data);

dbms_output.put_line(v_emp_data.ename||' '||v_emp_data.sal);

end;

使用scott用戶登錄

統(tǒng)計某個部門的員工的工資總和,員工的人數(shù),平均工資,創(chuàng)建存儲過程

create or replace procedure deptcount

(v_deptno emp.deptno%type,v_sal_sum out number,v_recordes out number,v_avg_sal out number,errorMsg out varchar2)

is

begin

select sum(sal) into v_sal_sum from emp group by deptno having deptno=v_deptno;

select count(*) into v_recordes from emp group by deptno having deptno=v_deptno;

select avg(sal) into v_avg_sal from emp group by deptno having deptno=v_deptno;

exception

when no_data_found then

errorMsg:='沒有該部門';

end;

調(diào)用:

declare

v_sal_sum number;

v_recordes number;

v_avg_sal number(8,2);

v_errormsg varchar2(20);

begin

deptcount(90,v_sal_sum,v_recordes,v_avg_sal,v_errormsg);

dbms_output.put_line(v_sal_sum||' '||v_recordes||' '||v_avg_sal);

dbms_output.put_line(v_errormsg);

end;

//輸出參數(shù)

create or replace procedure my_pro(v_num in number,v_result out number)

is

v_temp number;

begin

v_temp:=0;

for i in 1..v_num

loop

v_temp:=v_temp+i;

end loop;

v_result:=v_temp;

end;

declare

v_recieve number;

begin

my_pro(100,v_recieve);

dbms_output.put_line(v_recieve);

end;

//既是輸入?yún)?shù)又是輸出參數(shù)

create or replace procedure my_pro1(v_i in out number)

is

v_j number;

begin

v_j:=30;

v_i:=v_i*v_j;

end;

declare

v_t number;

begin

v_t:=20;

my_pro1(v_t);

dbms_output.put_line(v_t);

end;

oracle的存儲過程怎么寫?

create or replace function pagesize(p_sql varchar2,pno number,pnosize number,pcount out number)

return sys_refcursor

as

v_sql varchar(2000);

ccount number;

tmpsql varchar2(2000);

cur_data sys_refcursor;

begin

v_sql:='select count(*) from ('||p_sql||') t';

tmpsql:='select * from (select rownum rowa,d.* from ('||p_sql||') d where rownum='||pno*pnosize||') where rowa'||(pno-1)*pnosize;

execute immediate v_sql into ccount;

pcount:=ceil(ccount/pnosize);

open cur_data for tmpsql;

return cur_data;

end;

這是一個分頁的存儲過程

oracle存儲過程怎么寫循環(huán)

寫循環(huán)的操作方法和步驟如下:

1、第一步,編寫存儲過程的整體結構,然后定義變量,見下圖。

2、其次,完成上述步驟后,在定義變量后定義游標,begin,select sysdate into v_date from dual,end test_proc,如下圖所示。

3、接著,完成上述步驟后,寫一個for循環(huán),游標開始for循環(huán),為臨時變量名任意起個名,輸出一個字段,使用變量名.列名就好了,最后游標for循環(huán)就結束了,如下圖所示。

4、最后,完成上述步驟后,試運行,單擊“

DBMS Output”選項卡進行檢查,運行成功,見下圖。這樣,問題就解決了。

oracle怎么寫存儲過程

Oracle存儲過程基本語法:CREATE OR REPLACE PROCEDURE 存儲過程名 IS BEGIN NULL; END;解釋:行1: CREATE OR REPLACE PROCEDURE 是一個SQL語句通知Oracle數(shù)據(jù)庫去創(chuàng)建一個叫做skeleton存儲過程, 如果存在就覆蓋它; 行2: IS關鍵詞表明后面將跟隨一個PL/SQL體。 行3: BEGIN關鍵詞表明PL/SQL體的開始。 行4: NULL PL/SQL語句表明什么事都不做,這句不能刪去,因為PL/SQL體中至少需要有一句; 行5: END關鍵詞表明PL/SQL體的結束。


當前標題:oracle中怎么寫過程,oracle的使用教程
URL網(wǎng)址:http://weahome.cn/article/hdjsij.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部