oracle 创建简单存储过程出现编译错误

create or replace procedure sname_two_count()
returns integer
begin
declare s_count integer;
select count(sid) into s_count
from student where 12-length(student.sname)=8;//一个中文字符是占2,两个中文字符号就是4.sql语句我测 //试过是OK的
return s_count;
end;
/
这里是创建一个返回 sname只有2个中文字符的个数的存储过程
比如一个学生表,将名字是两个字符比如"张三"的用count统计出来,用integer返回并输出
但是出现编译错误,新学求指导和解答
SHOW ERROR 结果是
:出现符号")"在需要下列之一时:
<an identifier>

<a double-quoted delimited-identifier> current delete exists prior

create procedure axx_song
as
--测试
count_num number :=0; --声明一个变量接收我们的结果
begin
select count(*) into count_num from alert_qt;
dbms_output.put_line(count_num);--这个函数是输出信息到控制台.
end axx_song;

这个才是存储过程.区别于存储函数..函数必须有返回值.而存储过程可以没有,
温馨提示:答案为网友推荐,仅供参考
相似回答