一个关于ORA-01461错误,can bind a LONG value only for insert into a LONG column (内详)——重奖

yxxx 2005-10-18 10:20:45
用java开发web程序,应用服务器是weblogic,用oracle的jdbc连接

表中一个字段是long类型,用tomcat的时候,一切正常,
但是到了weblogic下,保存信息时(即向该表插入数据时),报ora-01461错误
而且有的时候保存成功有的时候保存失败,用sql语句直接插入能成功,
并不是文本的长短造成的,有时很长超过4k也能保存成功,有时只有几百字节反而出错……

不知道讲的清楚么,唉,琢磨了一天多了,还没搞定,望大家帮帮我
...全文
442 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
yxxx 2005-10-20
  • 打赏
  • 举报
回复
谢谢各位的意见:)
chanet 2005-10-19
  • 打赏
  • 举报
回复
从你怀疑的地方入手吧~ 呵呵

如: oracle引起乱码的是字符集, java引码乱码是的编码格式.
像在weblogic.propertites文件中,找到weblogic jsp propertites这一段代码,加上encoding=GB2312

或在jsp代码页上写 <%@page contentType="text/html;charset=gb2312"%>

等等.... 相信你懂我的意思了吧~ good luck. :)
weljava 2005-10-19
  • 打赏
  • 举报
回复
据我最近的ASP.net上碰到的问题,由于sqlplus里边的字符是一顶一的,到了Microsoft Enterprise Library里边就变成了双字节的,所以只能用4000/2=2000个长度了:(
ATGC 2005-10-19
  • 打赏
  • 举报
回复
看看字符串里有没有 \r
qiaozhiwei 2005-10-19
  • 打赏
  • 举报
回复
我觉得应该检查一下插入失败的记录,看是否有特殊的字符,比如回车什么的,不可见,但写入的时候有可能导致错误
yxxx 2005-10-18
  • 打赏
  • 举报
回复
谢谢牧师留言啊:)
我也怀疑是字符集的问题,但不知道怎么去调试……
chanet 2005-10-18
  • 打赏
  • 举报
回复
没试过 weblogic~ 呵呵

可能是由字符集引起的~~

多字符的时候可能包括有 '',可以括起来,所以插入正常.
少字符的时候可能就出现乱码,无法组织正确的sql语句.

调试的时候可以在long类型的内容入手试试~ :)
hevin 2005-10-18
  • 打赏
  • 举报
回复
帮顶

17,086

社区成员

发帖
与我相关
我的任务
社区描述
Oracle开发相关技术讨论
社区管理员
  • 开发
  • Lucifer三思而后行
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧