Illegal mix of collations MySql 5.6
Von gestern auf heute will meine DB nicht mehr mitspielen. Beim Öffnen von Tabellen (aus .Net heraus):
Public Function CountRecords2(ByVal sSQL As String) As Integer Implements IDBSettings.CountRecords2
If Not OpenConnection2() Then Return -1
Dim i As Int32
Try
Dim cmd As New MySqlCommand(sSQL, _conn2)
i = CInt(cmd.ExecuteScalar)
Catch ex As Exception
MessageBox.Show("Datenbankfehler")
i = -1
Finally
If _conn2.State <> ConnectionState.Closed Then _conn2.Dispose()
End Try
Return i
End Function
bekomme ich "Datenbankfehler":
Illegal mix of collations (latin1_german2_ci,IMPLICIT) and (utf8_general_ci,COERCIBLE) for operation 'like'
Die Tabelle wurde so erstellt:
CREATE TABLE `t130` (
`C0001` int(11) NOT NULL AUTO_INCREMENT,
`C0007` date DEFAULT NULL,
`CP100` varchar(20) COLLATE latin1_german2_ci DEFAULT NULL,
`CP101` varchar(45) COLLATE latin1_german2_ci DEFAULT NULL,
`CP102` varchar(45) COLLATE latin1_german2_ci DEFAULT NULL,
`CP103` date DEFAULT NULL,
`CP104` varchar(20) COLLATE latin1_german2_ci DEFAULT NULL,
`CP107` varchar(46) COLLATE latin1_german2_ci DEFAULT NULL,
`CP109` varchar(9) COLLATE latin1_german2_ci DEFAULT '',
`CP110` varchar(1) COLLATE latin1_german2_ci DEFAULT ' ',
`CP112` varchar(10) COLLATE latin1_german2_ci DEFAULT NULL,
`CP113` varchar(40) COLLATE latin1_german2_ci DEFAULT NULL,
PRIMARY KEY (`C0001`),
KEY `stammnr` (`C0001`),
KEY `name` (`CP101`,`CP102`),
KEY `geboren` (`CP103`)
) ENGINE=InnoDB AUTO_INCREMENT=9503 DEFAULT CHARSET=latin1 COLLATE=latin1_german2_ci
Sie ist seit vielen Jahren im Produktivbetrieb und enthält schon einige tausend Datensätze. Bis gestern konnten wir noch prima damit arbeiten. Check Table zeigt keine Fehler. Sollte sich ein Datensatz eingeschlichen haben, der utf8 codiert ist und das Problem verursacht? Könntet ihr mir helfen, es zu lösen?
Danke und Grüße
Norbert