這篇文章主要介紹如何解決Oracle NClob讀寫(xiě)問(wèn)題,文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!
最近一個(gè)新項(xiàng)目中,嘗試在 Oracle 數(shù)據(jù)庫(kù)中使用 NCLOB 來(lái)保存大的 xml 字符串。
在代碼自動(dòng)生成工具(通過(guò) JDBC 驅(qū)動(dòng)程序,讀數(shù)據(jù)庫(kù)表結(jié)構(gòu),自動(dòng)生成對(duì)應(yīng)的 java 代碼,包含增加、刪除、修改、分頁(yè)查詢、根據(jù)主鍵查找等前臺(tái) html/js、后臺(tái)代碼 java),將 NCLOB 字段映射到 String 類型。
運(yùn)行代碼,無(wú)報(bào)錯(cuò)。使用 SQuirreL SQL 客戶端查看數(shù)據(jù),覺(jué)察數(shù)據(jù)未保存成功。
網(wǎng)上搜一通,有提到用 SetBigStringTryClob 的數(shù)據(jù)庫(kù)連接額外屬性的??傆X(jué)得好傻。也有提到用 setStringForClob 方法的,也比較笨。
最后在 Oracle 官網(wǎng)上,找到一個(gè)更好的辦法:
升級(jí) Oracle JDBC 驅(qū)動(dòng)程序,直接用 java JDBC 標(biāo)準(zhǔn)的 setString 函數(shù),保存成功!
對(duì)應(yīng)網(wǎng)址:
http://docs.oracle.com/cd/E11882_01/java.112/e16548/oralob.htm#JJDBC28534
里面提到:
In Oracle Database 11g release 2 (11.2), the setBytes, setBinaryStream, setString, setCharacterStream, and setAsciiStream methods of PreparedStatement are extended to enhance the ability to work with BLOB, CLOB, and NCLOB target columns.
...
The SetBigStringTryClob connection property of Oracle Database 10g Release 1 (10.1) is no longer used or needed.
...
----------------------------
以上是“如何解決Oracle NClob讀寫(xiě)問(wèn)題”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對(duì)大家有幫助,更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!
分享標(biāo)題:如何解決OracleNClob讀寫(xiě)問(wèn)題-創(chuàng)新互聯(lián)
網(wǎng)站鏈接:http://aaarwkj.com/article0/dijeio.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供服務(wù)器托管、Google、動(dòng)態(tài)網(wǎng)站、自適應(yīng)網(wǎng)站、軟件開(kāi)發(fā)、面包屑導(dǎo)航
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容