ORA-01461: can bind a LONG value only for insert into a LONG column,不是中文長度問題,是ojdbc驅動


【DB server端】Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production

解答:查看server極端在版本和字符集,請看這里


【我的應用linux服務器,oci連接】從前端界面錄入中文,插到庫里就變了亂碼。

解答:查看server端字符集,發現支持中文,而且用pl/sql執行sql,確實是能將中文正確插入的,那就一定是client端有問題嘍。

發現,是前端進來的時候,就已經成了亂碼。

$.post()如果包含中文參數,那么進行這樣的編碼,var hello1 = encodeURIComponent($("input[name='fromApps']").val());

后台進行,fromApps = URLDecoder.decode(fromApps, "UTF-8");這樣就好了。

 

【我的本機pc,thin連接】壓根兒插不進去中文,報ORA-01461: can bind a LONG value only for insert into a LONG column

解答:網上傳說可能是由於字段爆了,但我的情況不屬於,因為哪怕我只輸入一個中文也有這個問題(字段varchar2(32)是夠的),那么又會是什么問題呢?

網民們太強大了,懷疑這是驅動問題,果然的,我用的是ojdbc14.jar(在eclipse .classpath文件中搜ojdbc)!

然后個然后,換成ojdbc6.jar(在test bundle, pom.xml引入),重啟就好啦!詳情可看這里

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM