关于oracle报ORA-01480: trailing null missing from STR bind value错...
发布网友
发布时间:2022-04-23 13:34
我来回答
共3个回答
热心网友
时间:2022-04-13 18:06
楼上的果断是Oracle门外汉。
Rownum只是一个逻辑字段。这个字段值的设定是这样的:Oracle将取出来的数据的第一条的rownum作为1,依次累加。小于等于3能查出数据就不难理解。而如果*条件设成rownum=3,那么他永远不满足条件,因为一条数据rownum=1,不满足条件去掉,那么第二条的rownum又等于1了。所以,rownum总是从1开始的,没有1和2的话,就不可能出现3.
如果想用=3作为*条件,楼主可以用rowid。rowid可以说是物理存在的,表示记录在表空间中的唯一位置ID,在DB中唯一。只要记录没被搬动过,rowid是不变的。
建议搜一下rownum和rowid的区别,好好理解下。
热心网友
时间:2022-04-13 19:24
尝试用varchar2(1000 CHAR)来定义你的字符字段,
似乎你说的情况是你特定的客户端应用,不是直接在SQLPLUS里面执行的,碰到问题首先在SQLPLUS里面直接插入数据试验,看结果如何。
热心网友
时间:2022-04-13 20:58
你是用for update 插入的吧?
用insert 试试
参考以下网址:
http://yyddttjj.blog.163.com/blog/static/13512030720091123113541720/