Hi,
I have a table that contains a huge number of fields, out of which
3 are VARCHAR2(2000). I am using a Orcale 9i with UTF8 char set. The
data I am trying to insert is ASCII (English). When I try using a
Pro*C program to insert the data, it fails, giving the error
ORA-01461.
My data is not longer than 2000 char. It neither contains any
multibyte character. Why does this happen?
If I try to insert one of the 3 VARCHAR2 columns only, it works fine.
If I use the same Pro*C program to insert the same data into the same
table in non-UTF8 database, it inserts perfectly.
Incidently, I tried changing the columns from VARCHAR2(2000) to CLOB.
Then the program works fine.
Do I need to use CLOB? As long as my data contains single byte
characters, why should I increase my column length?
Thanks in advance.
- Anoop
I have a table that contains a huge number of fields, out of which
3 are VARCHAR2(2000). I am using a Orcale 9i with UTF8 char set. The
data I am trying to insert is ASCII (English). When I try using a
Pro*C program to insert the data, it fails, giving the error
ORA-01461.
My data is not longer than 2000 char. It neither contains any
multibyte character. Why does this happen?
If I try to insert one of the 3 VARCHAR2 columns only, it works fine.
If I use the same Pro*C program to insert the same data into the same
table in non-UTF8 database, it inserts perfectly.
Incidently, I tried changing the columns from VARCHAR2(2000) to CLOB.
Then the program works fine.
Do I need to use CLOB? As long as my data contains single byte
characters, why should I increase my column length?
Thanks in advance.
- Anoop
Comment