当前位置: 代码迷 >> Oracle管理 >> 一个最简单的存储过程,请大家指教初学者
  详细解决方案

一个最简单的存储过程,请大家指教初学者

热度:61   发布时间:2016-04-24 05:41:21.0
一个最简单的存储过程,请大家指教菜鸟
以前用sybase数据库,对oracle不熟。
现在现在pb 中建oracle存储过程,总是报错。现在写一个最简单的,让大家看看哪里错了?

create or replace procedure xa_clr
is
begin
select * from v_ch;
end xa_clr;

------解决方案--------------------
SQL code
create or replace procedure proc_alarmsASteim date;BEGINteim := sysdate;insert into qiudf_alarms(alarm_status,alarm_datetime) values(0,teim);commit;end proc_alarms;
------解决方案--------------------
select * from v_ch;
个地方有错不是这样实现的
------解决方案--------------------
select V_CH字段 INTO 你过程中定义的变量 from v_ch;
不能直接select * from v_ch;这样字...
------解决方案--------------------
tjdate 这是日前类型吧 你定义的varchar换成date
------解决方案--------------------
返回值可能不止一行,查询语句没有分号结尾
SQL code
create or replace procedure xa_clrastjrq varchar(10);beginselect tjdate into tjrq from v_ch where rownum=1;end xa_clr;
------解决方案--------------------
SQL code
create or replace procedure xa_clrastjrq varchar(10);beginselect tjdate into tjrq from v_ch where rownum = 1; --commit;end xa_clr;
------解决方案--------------------
SQL code
create or replace procedure xa_clrastjrq varchar(10);beginselect tjdate into tjrq from v_ch ;commit;end xa_clr;
------解决方案--------------------
你要简单的就别写查询 写增删改 


create or replace procedure xa_clr(rs out sys_refcursor)
is
begin
open rs for select * from v_ch;
end xa_clr;
  相关解决方案