
正文
oracle怎么声明变量,如何声明变量
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
oracle 在自定义函数怎么声明变量
呃,一个输入变量,一个输出变量不就结了
create or replace function Fun_Multiplicative(v_input in number) return number is
v_result number(8);
v_total number(8) :=1;
v_count number(5) :=1;
begin
while v_count = v_input loop
v_total := v_total * v_count;
v_count := v_count + 1;
end loop;
v_result := v_total;
return(v_result);
end Fun_Multiplicative;
相关问答
Q1: declare 在Oracle中声明变量 这么使用变量
[TEST1@orcl#15-4月 -10] SQLset serveroutput on
[TEST1@orcl#15-4月 -10] SQLdeclare
2 v_num number;
3 begin
4 select count(*) into v_num from tab;
5 dbms_output.put_line(v_num);
6 end;
7 /
15
PL/SQL 过程已成功完成。
Q2: 在 oracle 的存储过程中 如何声明一个动态表的记录型变量
你只能在存储过程中使用动态的匿名块了。
比如:
create or replace procedure pro1(p_tname varchar2) is
v_dy_sql_block varchar2(32767) ;
begin
v_dy_sql_block := ' declare '||
' l_row '||p_tname||'%rowtype ;' ||
'....' ;
execute immediate v_dy_sql_block ;
end;
Q3: 在《oracle》中如何用declare声明变量?
先说一下你的问题,declare在oracle中指代的是“块”,用于处理一段业务逻辑的。
声明块中的变量,只需要在块里面的最前面输入声明即可。
示例:
declare
//这两个声明是声明了一个游标
type cursor_type is ref cursor;
cursor_deptno cursor_type;
//这下面2个变量的声明,使用的是emps表下面的sal或ename字段的类型,你也可以直接定义
v_sal emps.sal%type;
v_name emps.ename%type;
//你也可以这样,直接赋值,当然了,oracle里的赋值是需要使用“:=”,只用“=”报错
i number :=0;
begin
open cursor_deptno for select ename,sal into v_name,v_sal from emps
where deptno = input deptno;
loop fetch cursor_deptno into v_name,v_sal; -- 循环体
if v_sal 2000 then -- 判断
update scott.emps set sal = v_sal + 101 where ename = v_name;
end if;
exit when cursor_deptno%notfound; -- 当取完了即结束
dbms_output.put_line('Name:'|| v_name ||' Sal:'|| v_sal);
end loop;
end;








