Warning: Procedure created with compilation errors 创建存储过程的时候出现的错误
createorreplaceprocedureprcle(v_nameinvarchar2,v_yearoutnumber,v_saloutnumber)isout_n...
create or replace procedure prcle(v_name in varchar2,v_year out number,v_sal out number)
is
out_name varchar2(10)
out_sal number(7,2)
begin
out_name:='xiaoyang'
out_sal:=0.0
if(v_year>10)
select sal into v_sal from scott.employee where ename=v_name
out_sal:=v_sal+1300
if(v_year<5)
select sal into v_sal from scott.employee where ename=v_name
out_sal:=v_sal+500
dbms_output.put_line(out_sal)
dbms_output.put_line(out_year)
end prcle; 展开
is
out_name varchar2(10)
out_sal number(7,2)
begin
out_name:='xiaoyang'
out_sal:=0.0
if(v_year>10)
select sal into v_sal from scott.employee where ename=v_name
out_sal:=v_sal+1300
if(v_year<5)
select sal into v_sal from scott.employee where ename=v_name
out_sal:=v_sal+500
dbms_output.put_line(out_sal)
dbms_output.put_line(out_year)
end prcle; 展开
展开全部
Warning: Procedure created with compilation errors创建存储过程出现错误,是设置错误造成的,解决方法如下:
1、打开mysql的客户端管理软件,找到想要创建存储过程的数据库,在【Stored Procedures】菜单上点击鼠标右键,选择【Create Stored Procedure】菜单项。
2、点击之后,右侧会出现一个存储过程编辑界面,并且会有默认的创建存储过程的基本结构。
3、在CREATE PROCEDURE后面的是存储过程的名字,可以改成喜欢的任何名字。
4、在存储过程名字后面有个括号,这里是放置存储过程的传入、传出参数的,当然存储过程也可以没有参数,保留一个空括号即可。
5、调用存储过程使用call关键字,后面是存储过程的名称,括号中是传入的参数值。最后点击顶部的闪电符号,就可以执行存储过程,在下方显示存储过程返回的结果。
展开全部
insert下面应该有个commit;(分号也带着)而且你的insert语句后面也没有分号,所以显示命令未结束
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
楼主的代码有几下几个问题:
从语法上讲:
1、PL/SQL语句或语句块要以 分号 结尾 ;
2、if语句的语法应是if then end if;
从命名习惯上讲:
1、过程内声明的变量不宜以out打头,一般以v_打头
2、过程头部括号内声明的输出变量则相反,宜以out_打头
从程序逻辑上讲:
1、v_year没有做任何初始化就用于大小判断;
2、v_name变量没有做任何初始化就用于select语句的过滤条件
最后,很抱歉没有直接把正确的代码贴出来演示给楼主。
因为确实看不出来你的代码是何用意。
楼主最好能跟大伙说说你想实现什么功能。
依循我上述几点,楼主自己再修改调试一番,相信印象愈加深刻,进步更加速度。
从语法上讲:
1、PL/SQL语句或语句块要以 分号 结尾 ;
2、if语句的语法应是if then end if;
从命名习惯上讲:
1、过程内声明的变量不宜以out打头,一般以v_打头
2、过程头部括号内声明的输出变量则相反,宜以out_打头
从程序逻辑上讲:
1、v_year没有做任何初始化就用于大小判断;
2、v_name变量没有做任何初始化就用于select语句的过滤条件
最后,很抱歉没有直接把正确的代码贴出来演示给楼主。
因为确实看不出来你的代码是何用意。
楼主最好能跟大伙说说你想实现什么功能。
依循我上述几点,楼主自己再修改调试一番,相信印象愈加深刻,进步更加速度。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询