Illegal mix of collations for operation 'wie' während der Suche mit Entzündet-Datatables
Habe ich erfolgreich umgesetzt Gezündet-Datentabellen. Jedoch, während der Suche mit Datenbank bei der Eingabe von "nicht-lateinischen" Buchstaben wie "I,ş,ğ,.."
POST http://vproject.dev/module/user/ign_listing 500 (Internal Server Error)
Details:
Illegal mix of collations for operation 'like' while searching
... (u.id_user LIKE '%Ä°%' OR u.first_name LIKE '%Ä°%' OR u.last_name LIKE '%Ä°%' OR ue.email LIKE '%Ä°%' OR u.last_login LIKE '%Ä°%' ) ...
%Ä°%
Teil ändert sich entsprechend der nicht-lateinischen Zeichen, die Sie eingegeben haben.
Irgendeine Idee zur Lösung?
Eine Möglichkeit ist die Verwendung
convert(datefield using utf-8)
...InformationsquelleAutor YahyaE | 2013-09-05
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich herausgefunden, das problem. Es scheint sich die DATUMZEIT-Felder, die das problem verursacht.
gibt Fehler für
Illegal mix of collations for operation 'like'
. Wenn ich entfernenLIKE
TeiltöneDATETIME
Felder, es gibt keine Fehler mehr. Ich hoffe, das hilft.Nein, WIE und DATETIME incompitablity ist ein MySQL-problem. Hoffe, die behoben werden in späteren Versionen.
So wie ich das verstehe, ist das problem auf JSON UNICODE DEKODIERT. Also, in PHP 5.4 sollte es funktionieren. Haben Sie versucht, es auf die neueste PHP-version?
Sie mögen Recht haben. Die Frage ist ein Jahr alt, also ich nicht versuchen Sie es mit der neuesten version. Lassen Sie mich und die community wissen, wenn Sie versuchen, und machen es zu arbeiten. Dank
Haben Sie versucht, mit der neuesten version?
InformationsquelleAutor YahyaE
Versuchen Sie Folgendes:
Finden MySQL-Unicode-Zeichensatz
Außerdem können Sie sich an MySQL _bin und binäre Sortierungen für weitere Informationen über
utf8_bin
:Warum versuchen Sie nicht
var_dump($this->input->post());
im controller, um zu sehen, genau das, was CI ist zu tun, um die chars.Ich habe. Es ist, wo das problem ist. Ich bin gestapelt mit diesem, wie kommen die post ist nicht utf-8?
Die POST scheint UTF-8, es ist okay. Etwas falsch mit Entzündet-Datatables_
Ein weiterer Verweis [link] (github.com/IgnitedDatatables/Ignited-Datatables/issues/38)
InformationsquelleAutor doitlikejustin
Die Frage ist ein bisschen alt.
Endlich finde ich eine Lösung ändern "GEFÄLLT mir" "LIKE binary"
InformationsquelleAutor Tse Ka Leong
ich weiß, dass dies viel zu spät, aber hier mein workaround.
datetime/date-Spalte gibt Fehler für Illegal mix of collations for operation 'wie', also durch Umwandlung, als eine andere Tabelle Entität, vorherigen Spalte type " ersetzen mit varchar-Typ.
auch, stellen Sie sicher, konvertieren jede Spalte, bevor Sie es konvertieren, um temporäre Tabelle, um matching-Prozess einfacher.
InformationsquelleAutor dwerty_weird