我现在再用hibernate连oracle数据库,环境是xp,jdk1.7,hibernate4,oracle10.1 |
|
10分 |
|
就是用得那个ojdbc14…………….那里面所有的驱动都用了 包括classes |
|
。。。。。。。。。。。。。。。。 |
|
10分 |
可能是包导错误,你直接在clob或者blob类前面写上包路劲。
http://www.weste.net/2004/11-3/12250047377.html http://blog.csdn.net/fenglibing/article/details/669476 |
你给我的方法都是先存空的再往里存,我想直接用hibernate自带的面向对象的存储方式。而且我只要换驱动就有一个能成功运行………. 不会是代码的问题吧0.0 |
|
10分 |
关注,
ORA-01461: can bind a LONG value only for insert into a LONG column 我怎么看这个异常提示都和clob无关呢 |
对 异常提示其实跟Clob无关,但是只要换过驱动就不会报错,长字段也可以插入。。。。说明是驱动的问题啊……….. |
|
60分 |
我只是试图从这种现象分析入手 先看下oracle关于ORA-01461的解释: The Oracle docs note this on the ORA-01461 error: ORA-01461 can bind a LONG value only for insert into a LONG column Answer: The LONG and LONG RAW datatypes have been deprecated and the easiest solution to the ORA-01461 error is to change the column datatype to as CLOB. The replier suggested that instead of using LONG as the column, that ORA-01461 could be avoided if the binary stream was LONG RAW instead. 出现这种异常是因为将LONG的数据类型插入非LONG型列中,但你是在插clob数据,怎么会报这提示呢,后来了解到可能oracle把clob数据也作为异常报告中的long型数据对待了(clob属于LOB) when you configure the Oracle ODBC Driver you must check the Enable LOBs option (this is in the Oracle tab at the bottom). If you don””t do this you will be unable to insert LOB values, instead you will get the message: “ORA-01461: can bind a LONG value only for insert into a LONG column” oracle的Enable LOBs有没有选上? |
好的 非常感谢你的回复哈 我过了五一去机房试试 哈哈 |
|
http://bbs.csdn.net/topics/390823691
看看这个行不行 |