ORA-01480: trailing null missing from STR bind value
Cause: A bind variable of type 5 (null-terminated string) does not contain the terminating null in its buffer.
Action: Terminate the string with a null character
即在将参数绑定到SQL中时,由于长度比表中类型长,而该字段最后的字符都是null,一般会出现这个错误。这时需要在参数赋值时,将最后的null替换为空格:
我们知道,在执行绑定变量SQL操作时,有两边的长度要求:一边是Bind变量的长度,另一边是数据库的字段的长度要求,bind变量的长度不能超过数据库的字段的长度,这时报ORA-01480: trailing null missing from STR bind value。
(1)检查Bind变量是否比表中字段的长度长,如果是比较长,则要将Bind变量的长度减小;
(2)如果Bind变量的长度不等于表中字段的长度,而且出现ORA-01480,可以尝试把最后一个字符使用空格来填充。