I hope someone here is smarter than me and knows more about UTF-8.
We are going to UTF-8 because our ERP vendor has gone to UTF-8 and we need to
One of the things I tested is a job that contains the following WHERE clause:
where first_name like ‘%Ê%’
Now an E with a hat in ANSI is hex C8, bin
Here is where it gets interesting
If the first bit is 0
it is a single byte character
If the first 3 bits are 110 it is a two byte
If the first 4 bits are 1110 it is a 3 byte character
If the first 5 bits are 11110 it is a 4 byte character
Now back to the example. Ê = bin 110 0 1000
So Oracle thinks it is a two byte character so the bit pattern for the % sign is
considered the second byte of the two byte character. So of course nothing is
found. This is BAD.
I am hoping someone has been through this and has some advice.