SQL 插入 CLOB类型
生活随笔
收集整理的這篇文章主要介紹了
SQL 插入 CLOB类型
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
在執行SQL的時候報了[ORA-01704:字符串文件太長]的錯誤,如下圖所示:
oracle默認把字符串轉換成varchar2類型,而這個字符串的長度,又比4000大,所以會報ora-01704錯誤。說得通俗一點,就是兩個單引號之間的字符不能超過4000。
遇到這個問題,可以使用PL/SQL語法,采取綁定變量的方式解決,而不是直接拼接SQL,例如:
--使用PL/SQL語法,采取綁定變量的方式解決,而不是直接拼接SQLDECLARE V_LANG CLOB := '待插入的海量字符串';V_UPDATE CLOB := '更新的海量字符串'; BEGININSERT INTO temp t VALUES ('Grand.Jon', 22, V_LANG); --增加UPDATE temp t SET t.temp_clob = V_UPDATE WHERE rownum = 1; --修改SELECT t.NAME, dbms_lob.substr(t.temp_clob) FROM TEMP t; --查詢 將CLOB轉成字符類型DELETE temp t WHERE rownum = 1; --按列刪除 COMMIT;END; /注:END;末尾加“/”的意思是執行這段PL/SQL代碼,如果多個PL/SQL代碼需要同時執行,末尾必須加上該符號。
總結
以上是生活随笔為你收集整理的SQL 插入 CLOB类型的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 扒一扒中断为什么不能调printf
- 下一篇: oracle与mysql语法区别_mys