Oracle dbms_output.put 和dbms_output.put_line 的区别
油区波斯猫 2011-12-31 06:03:35 如下表
学生信息tblemp
id name gender
101 张三 1
201 李四 2
301 王五
输出性别信息时将数字转换为汉字,如果是1输出男、2输出女。
declare
cursor c is select * from tblemp;
begin
for i in c loop
dbms_output.put_line(i.id||i.name);//问题出现在这一行 输出结果如下:
if(i.gender =1) then dbms_output.put_line('男'); 101张三
elsif (i.gender=2) then dbms_output.put_line('女'); 男
end if; 201李四
end loop; 女
end; 301王五
begin
dbms_output.put_line('213');
end;
如果把有问题的那一行换成 dbms_output.put(i.id||i.name);
输出结果则变为:
101张三男
201李四女
自己写的测试语句:
begin
dbms_output.put_line('213');
end;
结果输出213
begin
dbms_output.put('213');
end;
结果什么也不输出。
本人所用环境为PLSQL Developer oracle 11g