string轉clob存數(shù)據(jù)庫 如何通過sql的insert語句插入大量字符串到oracle的clob字段?
如何通過sql的insert語句插入大量字符串到oracle的clob字段?當通過insert語句直接插入大量字符串(主要是HTML內(nèi)容)超過4000個字符時,會報告:ora-01489:字符串連接的
如何通過sql的insert語句插入大量字符串到oracle的clob字段?
當通過insert語句直接插入大量字符串(主要是HTML內(nèi)容)超過4000個字符時,會報告:ora-01489:字符串連接的結果太長。雖然字段是CLOB,這足以存儲,但在直接插入時,由于不強制將插入的字符串指定為CLOB類型,Oracle將把插入的字符串作為CLOB類型的“字符串類型”處理,因為Oracle有最大字符串限制(不超過4000個字符),它將報告錯誤。解決方案:指定要作為CLOB插入的字符串的類型,并使用過程或存儲過程。示例:declare reallybigtextstringclob:=“massive string to be insert”begin insert into test Table values(“test”,reallybigtextstring,“0”)end/commit這可以解決問題。補充:Java的JDK可以通過L流來處理這種情況,所以更方便。另外:在插入HTML內(nèi)容時,可能會包含空格,字符&;是Oracle的關鍵字,所以在插入之前應該轉義,例如“||||||||||||||||||||||