create or replace procedure pk_lyy_sjhz
is
// 存储过程
procedure pk_lyy_org
(
WSYHS varchar2,
WSYL1 varchar2,
DWDM varchar2
)
is
wd varchar2(32);
begin
update sjhz set WSYL1=WSYL1 where DWDM=DWDM;
commit;
select * from sjhz
end;
我这个存储过程怎么不对吗
...全文
4766打赏收藏
急求急求
create or replace procedure pk_lyy_sjhz is // 存储过程 procedure pk_lyy_org ( WSYHS varchar2, WSYL1 varchar2, DWDM varchar2 ) is wd varchar2(32); begin update sjhz set WSYL1=WSYL1 where DWDM=DWDM; commit; select * from sjhz end; 我这个存储过程怎么不对吗
update sjhz set WSYL1=WSYL1 where DWDM=DWDM;
上个月我正好碰到这个问题,字段名和变量名不要同名,大小写不一样也不要,不然这等式相当于1=1,永远为true。
select * from sjhz
如果你可在存储过程中查询,你要定义游标,将查到的结果存到游标中,再在你的程序中显示。直接在存储过程中查询是看不到任何结果的。
create or replace procedure pk_lyy_sjhz
is
// 存储过程
procedure pk_lyy_org
这是要干嘛,存储过程到底叫哪个呢。改成
create or replace
procedure pk_lyy_org
update sjhz set WSYL1=WSYL1 where DWDM=DWDM;
这里有歧义,变量名和字段名要区分开
下面的select * from sjhz 会报错
在存储过程中执行查询没有意义,也是不符合语法的,去掉