oracle存储过程返回结果
⑴ oracle 中运行存储过程作为返回值
oracle可以使用out型参数返回值,例如:
sql">--查询某商品编号是否存在,返回查询状态
createorreplaceprocereproc_getGood
(
param_shopIdnumber,--商品编号
param_flagoutnumber--查询状态0不存在
)
as
declarev_countnumber(1);
begin
selectcount(*)intov_countfromtb_goodswhereshopid=param_shopid;
ifv_count=0then
param_flag:=0;
else
param_flag:=1;
endif;
end;
⑵ Oracle中如何写带条件的查询存储过程并返回查询结果集
create or replace procere p_cnt(
p_time in varchar2,---查询的条件
p_cur out SYS_REFCURSOR)---游标返回
IS
v_sql varchar2(1000) :='';
v_date varchar2(20);
BEGIN
v_date := replace(p_time, '-', '');---时间的格式转换
v_sql := 'select * from dapartment d where d.d_time ='''|| v_date||'''';
END;
OPEN p_cur FOR v_sql;
END p_cnt;
⑶ oracle存储过程如何输出信息
可用DBMS_OUTPUT.PUT_LINE()对存储过程的进行输出。
编写存储过程:
create or replace procere test_pro(in_num number)
as
M number;
begin
M := in_num;
if 0 < M then
dbms_output.put_line('输出SQL语句1');
elsif M < 3 then
dbms_output.put_line('输出SQL语句2');
else
dbms_output.put_line('nothing');
end if;
end;
(3)oracle存储过程返回结果扩展阅读;
存储在数据库的数据字典中,存储在当前的应用中安全性由数据库提供安全保证,必须通过授权才能使用存储子程序,安全性靠应用程序来保证,如果能执行应用程序,就能执行该子程序。模式描述IN参数用来从调用环境中向存储过程传递值,不能给IN参数赋值,给此参数传递的值可以是常量、有值的变量、表达式等。
⑷ oracle 怎么接受存储过程返回值
存储过程没有返回值,存储过程有输出类型的参数,通过输出类型参数可以获取想要输出的值,输出类型的参数就像C++里面对引用的操作一样
⑸ Oracle获取存储过程输出参数返回值
CREATE OR REPLACE PROCEDURE sap_po_test(id IN NUMBER,
p_message OUT VARCHAR2) AS
mycount number(4) := 0;
BEGIN
SELECT COUNT(*)
INTO mycount
FROM 表
WHERE id = p_id;
IF mycount > 0 THEN
p_message := 'S';
ELSE
p_message := 'E';
END IF;
RETURN;
END;
( ⊙ o ⊙ )啊!
⑹ oracle存储过程 中把临时表数据 返回结果集
用索引表快一些,然后使用select * from table(存储过程名(参数列表....))输出。
⑺ 关于oracle存储过程返回结果集的问题
游标返回sql是不能添加变量在里面的,要使用动态的sql,
就是 定义 一个 v_sql varhcar2(8000) 的变量。
通过 v_sql := 'select * from tt where to_char(rent.plan_date,''yyyy'')='||new_years
然后 open rent_cur for v_sql;
⑻ oracle中在存储过程中怎么返回值
第一个问题
:
oracle没有inser
into
表
存储过程
的语句格式,所以这个需要你根据实际要求换种思路做吧。
第二个问题:
sqlserver
:'a'+char(10)+'b'
oracle:'a'
||
chr(10)
||
'b'
sqlserver中的
char函数
在oracle中是chr,参数和
返回值
是一样的。
⑼ oracle存储过程带参返回结果集
create or replace procere p_cnt(
p_time in varchar2,---查询的条件
p_cur out SYS_REFCURSOR)---游标返回
IS
v_sql varchar2(1000) :='';
v_date varchar2(20);
BEGIN
v_date := replace(p_time, '-', '');---时间的格式转换
v_sql := 'select * from dapartment d where d.d_time ='''|| v_date||'''';
END;
OPEN p_cur FOR v_sql;
END p_cnt;
⑽ 在Oracle存储过程中查询的数据结果怎样返回
oracle
跟ms不一样。
要返回表的记录数据,只能通过游标,或者自定义对象数组在存储过程中组装好后返回。