>>>>> "Giancarlo" == Giancarlo Bonansea <gbonanse@stripped>
> writes:
Giancarlo> Hello,
Giancarlo> I'm from Brazil and started using MySQL 3.22.21 configured with the Latin-1
Giancarlo> character set. Everything works fine, including matching of characters with
Giancarlo> accent, like the words "Bage" and "Bagé".
<cut>
Giancarlo> (5) SELECT * FROM cities WHERE name LIKE '%Bage%' -> Return 1 row "Taly
Giancarlo> Bage" (WRONG!)
Giancarlo> (6) SELECT * FROM cities WHERE name LIKE '%Bagé%' -> Return 1 row
> "Taly
Giancarlo> Bagé" (WRONG!)
Giancarlo> (7) SELECT * FROM cities WHERE name LIKE '%e%' -> Return 1 row "Taly
> Bage"
Giancarlo> (WRONG!)
Giancarlo> (8) SELECT * FROM cities WHERE name LIKE '%é%' -> Return 1 row
> "Taly Bagé"
Giancarlo> (WRONG!)
Giancarlo> This is a important feature that I think, is missing in MySQL. I also work
Giancarlo> with MS-SQL Server and it does not have this problem.
Hi!
Does MS-SQL server really compare 'e' and 'é' as the same with = and LIKE ?
At any rate; I once asked on this list which should be the 'right'
behavour for LIKE. Then most people didn't want to match 'e' and 'é'
with LIKE. (I actually didn't get that many respones...)
I could easily change this, I am only afraid to break applications
that depend on the current behaveour.
(In function sql/sql_string.cc, function:
static int wild_case_compare(const char *str,const char *strend,
const char *wildstr,const char *wildend,
char escape)
Just change toupper() -> my_sortorder[]
Regards,
Monty