3 ms·
That's not a real issue. I can understand this may bite some people that don't read the docs or don't understand encoding, but it's more misinformation than a t
by nvivo 9y ago
That's not a real issue. I can understand this may bite some people that don't read the docs or don't understand encoding, but it's more misinformation than a technical problem.
UTF-8 is variable length anywhere, not just inside mysql. If you don't want this behavior, you can either use UCS-2 or UTF-32. UTF-16 and UTF-8 are variable length encodings, period.
Most databases that have use char length for unicode actually work with UCS-2, and use 2 bytes per char, like MS SQL Server.
- nvivo 9y agoNot sure what deserved a downvote here... Is there anything incorrect?
- pornel 9y agoIt's not incorrect, but a strawman (I didn't downvote you btw). The question was why UTF-8 in MySQL has weird limits. It wasn't about what MySQL should have done in an alternative universe.
- nvivo 9y agoYeah, but I didn't point out what mysql should have done in an alternative universe. Mysql DOES support fixed lenght unicode, just use the correct encoding: ucs2 or utf32. What it does with utf-8 is what any system that supports utf-8 must do.