MySql ändern der Sortierung in der Ansicht
Ich habe eine view "name_all" in mysql die Struktur ist
colName varchar(30) utf8_general_ci
date varchar(76) utf8_general_ci
name varchar(43) latin1_swedish_ci
wenn ich versuche zu laufen-Abfrage:
SELECT CONCAT(`colname`,' of Mr. ',`name`,' Expire on ',`date`) FROM name_all
es Fehler geben:
#1271 - Illegal mix of collations for operation 'concat'
"colName" is basically a Column Name which is used as a row in this View
"date" is mysql Date which is converted in this format '%a %D %b, %Y'
"name" is concatenation of firstname, middlename, lastname from a table
Wie kann ich dieses Problem lösen und was ist mein Fehler?
wenn ich die Abfrage ausführen ZEIGEN VARIABLEN LIKE 'collation%'
Ergebnis ist
Variable_name Value
collation_connection utf8_general_ci
collation_database latin1_swedish_ci
collation_server latin1_swedish_ci
InformationsquelleAutor Shujaatali | 2012-06-06
Du musst angemeldet sein, um einen Kommentar abzugeben.
Obwohl Sie sagen, "alle Tabellen-und Spaltennamen sind in latin1_swedish_ci", was yo u geschrieben ist:
Ändern colName und Datum-Sortierung latin1_swedish_ci wahrscheinlich aussortieren Ihr problem.
Gute Frage. Sie hat zu tun, diese in die Tabelle Ihrer Datenbank, der Blick ist einfach wie ein Blick auf die Daten einer Tabelle mit einer definierten Satz von Regeln [wie der name impliziert "VIEW"]. So-Ansicht nicht ändern, die zugrunde liegende design für Ihr schema. Versuchen Sie, collotion in Datenbank-Ebene.
danke.......lösen durch manuelles ändern der Datenbank und Tabelle Sortierung
InformationsquelleAutor Shiham
Für alle anderen kommen über diesen thread, die Sortierung auf die Spalte wird bestimmt durch die zugrunde liegende Tabelle, Spalten, es sei denn, die Spalte ist eine hart-codierte Zeichenfolge, die im view definiert (z.B. ein FALL, definieren einige string-Wert). In diesen Fällen ist die Sortierung wird durch den Zeichensatz bestimmt angegeben während der anzeigen-Erstellung. Während die view definition-export Kunden, wie z.B. HeidiSQL kann umfassen ausführbare Kommentare, die den Zeichensatz auf einen Standardwert anderen als den beabsichtigten Satz. Wenn Sie erneut die definition, die Sie haben gespeichert Ihre nicht übereinstimmende Sätze. Führen Sie "show full columns from viewName" zu überprüfen.
InformationsquelleAutor Carth