Illegale Mischung von Kollatierungen in mySQL

8

Ich muss eine Spalte von einer Tabelle in eine andere übertragen. Die Quellentabelle hat eine andere Sortierung als die Zieltabelle (latin1_general_ci und latin1_swedish_ci).

Ich benutze

%Vor%

Ich bekomme eine "illegale Mischung von Kollatierungen".

Was ist eine schnelle Lösung, um das zu erreichen, ohne beide Tabellen ändern zu müssen? Ich versuchte CONVERT und COLLATE, um die gesamte Operation in UTF-8 auszuführen, aber das half nicht. "Barcode" enthält nur numerische Daten (auch wenn sie alle VARCHARs sind), daher gibt es keine Probleme bei der Sortierung. Ich muss das nur einmal tun.

  

Bearbeiten: Ich habe es mit einem CAST(fieldname as unsigned) für jedes betroffene Feld sortiert. Ich konnte das in diesem Fall tun, weil nur numerische Daten betroffen waren, aber es wäre schön, einen allgemeineren Ansatz zu kennen, also lasse ich die Frage offen.

    
Pekka 웃 24.02.2010, 16:52
quelle

2 Antworten

19
  

Ich habe CONVERT und COLLATE versucht, um die gesamte Operation in UTF-8 auszuführen, aber das hat nicht geholfen.

Es hat mich gestört, also habe ich heute diese Tabellen erstellt und diese erfolgreich ausgeführt:

%Vor%     
dev-null-dweller 25.02.2010, 22:39
quelle
0

Wie wäre es, wenn Sie mit nur zwei numerischen Spalten auswählen würden?

%Vor%     
dev-null-dweller 24.02.2010 17:48
quelle