首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > oracle >

这个sql块写的有有关问题,大家帮忙看看

2012-03-30 
这个sql块写的有问题,大家帮忙看看declarev_resultnumber(80)beginforcurin(selectdistinctnofromtable)l

这个sql块写的有问题,大家帮忙看看
declare
v_result   number(80);
begin
    for   cur   in   (select   distinct   no   from   table   )
    loop
        v_result:=cur.no;
        dbms_output.put_line( '工号为 '||v_result);
    end   loop;
end   ;
大家帮忙看看这有没有错误

就是把所有的员工工号打出来!

[解决办法]
语法没问题,就是number(80)太夸张,一我用的最大才number(19),

80位是什么概念
[解决办法]
建议还是把程序写的规范点吧:(别打我啊)

declare
v_result number(80);
CURSOR curs is
select distinct no from table;
begin
for c_cur in curs loop
v_result:=cur.no;
dbms_output.put_line( '工号为: '||to_char(v_result));
end loop;
exception
when others then
dbms_output.put_line(substr(sqlerrm,1,255));
end ;

热点排行