Hai già provato a utilizzare un confronto insensibile all'accento per la ricerca e l'ordine.
http://dev.mysql.com/doc /refman/5.0/en/charset-collation-implementations.html
Il fatto è che il tuo NAME
la colonna sembra essere memorizzata nel set di caratteri latin1 (8 bit). Ecco perché MySQL si lamenta di te in questo modo:
COLLATION 'utf8_general_ci' is not valid for CHARACTER SET 'latin1'
Potresti ottenere i risultati desiderati se provi
WHERE CONVERT(p.NAME USING utf8) LIKE _utf8 '%jose%' COLLATE utf8_general_ci;
Ma attenzione!
Quando si utilizza qualsiasi tipo di funzione (in questo esempio, CONVERT) sulla colonna in un'istruzione WHERE, si vanificano i tentativi di MySQL di ottimizzare la ricerca con gli indici. Se questo progetto diventerà grande (ovvero, se avrai molte righe nelle tue tabelle) devi archiviare i tuoi dati in formato utf8, non latin1. (Probabilmente sai già che il tuo LIKE '%whatever%'
il termine di ricerca sconfigge anche l'indicizzazione di MySQL.)