错误提示:oracle在toad中执行一段sql语句时,出现错误‘ORA-01704:字符串文字太长’。如下图:
原因:一般为包含有对CLOB字段的数据操作。如果CLOB字段的内容非常大的时候,会导致SQL语句过长。隐式转换:oracle默认把字符串转换成varchar2类型,而这个字符串的长度,又比4000大,所以会报ora-01704错误。说得通俗一点,就是两个单引号之间的字符不能超过4000。
使用CLOB类型来存储字符串,并使用dbms_lob.append来连接,最大可以达到4GB
oralce 内置函数 dbms_lob.append 来实现字符串的拼接,从而避免出现隐式转换的问题