Può succedere anche con le colonne varchar2. Questo è abbastanza riproducibile con PreparedStatements tramite JDBC semplicemente
- creazione di una tabella con una colonna di varchar2 (20 o qualsiasi lunghezza arbitraria) e
- inserimento nella tabella sopra con una riga contenente più di 20 caratteri
Quindi, come detto sopra, può essere sbagliato con i tipi o con la larghezza della colonna superata.
Si noti inoltre che poiché varchar2 consente un massimo di 4k caratteri, il limite reale sarà 2k per caratteri a doppio byte
Spero che questo aiuti