oralce数据存储问题
1declare2iint;3lvarchar2(5);4begin5i:=1;6l:=01;7dbms_output.put_line(l);8dbms_output....
1 declare
2 i int;
3 l varchar2(5);
4 begin
5 i:=1;
6 l:=01;
7 dbms_output.put_line(l);
8 dbms_output.put_line(l||to_char(i));
9* end;
SQL> /
1
11
变量l是字符类型,为什么在输出时会忽略0,难道oracle默认字符型也不存储0? 展开
2 i int;
3 l varchar2(5);
4 begin
5 i:=1;
6 l:=01;
7 dbms_output.put_line(l);
8 dbms_output.put_line(l||to_char(i));
9* end;
SQL> /
1
11
变量l是字符类型,为什么在输出时会忽略0,难道oracle默认字符型也不存储0? 展开
1个回答
展开全部
字符本来就应该单引号引起来的
在oracle里如果你那字符是字母或汉字那种的,你不加引号直接就报错了
但是因为你输入的是数字,oracle会把01默认转成整数,也就是1,所以你最后就显示1了,如果你想显示01,得这样
declare
i int;
l varchar2(5);
begin
i:=1;
l:='01';
dbms_output.put_line(l);
dbms_output.put_line(l||to_char(i));
end;
/
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询