Quoted string not properly terminated
I am runnig Oracle 8.1.7 on NT4. When I created database I set charachter set to UTF8.
On NT4 the value of NLS_LANG is AMERICAN_AMERICA.UTF8.
Ok lets move to client machines.
Let just say that I have table TEST which has one field TEXT VARCHAR2(5).
I am going to use some of our nacional charachters (Slovenia), hope you will be able to see them.
On clients the NLS_LANG parameter is set to SLOVENIAN_SLOVENIA.UTF8
I was executing this command :
insert into test values (sometext);
And results where :
If sometext was string without any our nacional charachters there is no problems.
Problem occurs if I use in sometext string charachter è. For example
sometext = 'kaèa'. Then I get error ORA-01756: quoted string not properly terminated.
What is interesting if after charachter è there is an a,e,i,o,u and after that again one of our nacional charachter which is not è, then insert statment exectues ok.
For example sometext = 'kèaš' --> 1 row created.
What I tried next is setting NLS_LANG (on client) to SLOVENIAN_SLOVENIA.EEMSWIN1250.
Then I could use all of our charachters, but (there is always but)!
It looks like that every nacional charachters now requreis two places in string. If field is VARCHAR2(10) and I try to insert string with five our charachters plus one additional (sometext = 'šðèæžh') then I get message : ORA-01401: inserted value too large for column.
P.S. On server NLS_LANG must be set to UFT8, becouse clients can be in very diffent languages. (slovenian,bulgarian,english,turkish,croatian,...)
Click Here to Expand Forum to Full Width