tag:blogger.com,1999:blog-6527688743456205256.post3210451802479345537..comments2023-12-18T09:38:33.215+11:00Comments on The Blas from Pas: ORA-01461 from JDBC program trying to insert large StringPas Apicellahttp://www.blogger.com/profile/09389663166398991762noreply@blogger.comBlogger3125tag:blogger.com,1999:blog-6527688743456205256.post-48291461056103454062008-10-29T22:55:00.000+11:002008-10-29T22:55:00.000+11:00The suggestion will work. When the parameter nls_...The suggestion will work. When the parameter nls_length_semantics=CHAR is set beforehand, created tables will have the VARCHAR2(## CHAR) attribute for varchar columns and length will be calculated by character count rather than byte count. Thus a varchar2(4000 CHAR) column would be able to hold a 4000 character AL32UTF8 string even if each character required 4 bytes for a total of 16,000 bytes.Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-6527688743456205256.post-85988153632444710202008-08-22T09:17:00.000+10:002008-08-22T09:17:00.000+10:00The anonymous suggestion above won't work. VARCHA...The anonymous suggestion above won't work. VARCHAR columns are still limited to 4,000 bytes in Oracle. A VARCHAR(4000 CHAR) column on an AL32UTF8 database will still be 4,000 bytes, and unable to store, e.g., more than 1,333 characters of Chinese text.Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-6527688743456205256.post-42933713163975683682008-04-11T05:28:00.000+10:002008-04-11T05:28:00.000+10:00Since your DB was created with AL32UTF8 , you need...Since your DB was created with AL32UTF8 , you need to declare your column as VARCHAR2(4000 CHAR), instead of VARCHAR2(4000) which really means VARCHAR2(4000 BYTE)Anonymousnoreply@blogger.com