我创建了一个存储过程,提示没说成功,也没说失败,就是提示完成了,但是显示的图标上有个小红叉,而且不能使用,我该怎么办?
解决方案 »
- 请教,ORACLE视图如何加密///
- 视图中表与表之间的连接问题
- Oracle数据库一题
- sqlserver的存储过程改成oracle的
- ORACLE中的存储过程就是过程吗?
- 如何立即刷新一个实体化视图?
- 同样的语句为何在存储过程总是异常抛出错误?
- sql语言中有没有类似C语言中的switch case的语句??
- 路过高人进来看看,新手提问,很容易得分的!!
- 我这里又两TXT文件,我运行到现在还没有结束,没有耐性了,谁有兴趣帮助我从1.TXT中删除与2.TXT相同的记录。建议,同时告诉我方法
- Variant conversion error for variable :V4c错误求解。
- =====请问一下大家,怎样用SQL实现下面的效果呀?=====
create or replace procedure IsSuccess
as
strUser varchar(20);
strNum varchar(20);
strSql varchar(500);
begin
if sql%rowcount=0 then
dbms_output.put_line('用户'||strUser||'的资产号'||strNum||'更新失败!更新语句被退回,如下:');
dbms_output.put_line(strSql);
end if
end;
我使用如下代码却未成功!
begin
exec issuccess(...,...,...);
end;
问题出在哪里呢?
as
strUser varchar(20);
strNum varchar(20);
strSql varchar(500);
begin
if sql%rowcount=0 then
dbms_output.put_line('用户'||strUser||'的资产号'||strNum||'更新失败!更新语句被退回,如下:');
dbms_output.put_line(strSql);
end if;
end;我使用如下语句时失败:
update meter_location t set t.customer_no='132' where t.customer_no='12412';
call issuccess('123','123','update meter_location');
提示:调用issuccess时参数个数或类型错误!
那该如何传参啊?
create or replace procedure IsSuccess
(
parameter1 varchar2(10) in,
parameter2 varchar2(10) out
)
as begin
dbms_output.put_line(parameter1);
end;
你写函数的时候, 根本就没有写参数。
怎么传参???
create or replace procedure IsSuccess
as
strUser varchar(20);
strNum varchar(20);
strSql varchar(500);
begin
if sql%rowcount=0 then
dbms_output.put_line('用户'||strUser||'的资产号'||strNum||'更新失败!更新语句被退回,如下:');
dbms_output.put_line(strSql);
end if;
end;
标注红色的地方!
create or replace procedure upsal(theno emp.empno%type ,per number)
is
cursor cur(theempno emp.empno%type) is select * from empbak1 where empno=theempno for update;
myrow prow emp%rowtype;
begin
open cur (theno);
fetch cur into myrow ;
update empbak1 set sal=sal*(1+per) where current of cur;
dbms_output.put_line('数据修改完成');
close cur;
end upsal;