Hieruit komen vraagtekens:
- De klant heeft een geldig karakter (goed), en
- De
SET NAMESis het eens met de codering die de klant heeft (goed), maar - De
CHARACTER SETvan de doelkolom bevat niet het bedoelde teken (slecht).
Voorbeelden:
latin1verwerkt alleen West-Europese karakters; een Oost-Europees karakter of een Aziatisch karakter proberen te plaatsen, past niet.latin2encp1250kan Tsjechisch aan, dus conversies tussen beide zijn meestal OK, maar niet tussen beide enlatin1utf8mb4is een superset vanutf8.Het plaatsen van een utf8-teken in utf8mb4 is oké, maar het omgekeerde zal resulteren in een '?' in sommige gevallen.
De tekens die zijn omgezet naar '?' kan niet van de tafel worden hersteld.
Hoe toekomstige INSERTs te repareren ?
- Gebruik
utf8mb4op de tabelkolom(men) werkt waarschijnlijk in alle gevallen. - Kies anders een
CHARACTER SETvoor de tabelkolom(men) die redelijk overeenkomen met de klantgegevens.
De reden waarom slechts enkele van de tekens ? (in š?ž?? ) is omdat šž bestaan in latin1 maar de andere niet.
Kort gezegd:verander de CHARACTER SET in de tabeldefinitie.