问题描述
我注意到,将文本强制转换为短于该值的长度会导致文本被截断。
select
cast('ROAD-1234' as varchar2(8)) as id
from
dual
ID
--------
ROAD-123 <--Notice that the number 4 has been removed
我本以为CAST AS VARCHAR2的行为与CAST AS NUMBER类似。
select
cast(1234 as number(3)) as id
from
dual
Error: ORA-01438: value larger than specified precision allowed for this column
为什么CAST AS VARCHAR2会无提示地截断文本,而不是像CAST NUMBER那样引发错误?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)