sql >> Database >  >> RDS >> Mysql

Java Server Pages - sorteren bij het invoegen in MySql?

Hieruit komen vraagtekens:

  • De klant heeft een geldig karakter (goed), en
  • De SET NAMES is het eens met de codering die de klant heeft (goed), maar
  • De CHARACTER SET van de doelkolom bevat niet het bedoelde teken (slecht).

Voorbeelden:

  • latin1 verwerkt alleen West-Europese karakters; een Oost-Europees karakter of een Aziatisch karakter proberen te plaatsen, past niet.
  • latin2 en cp1250 kan Tsjechisch aan, dus conversies tussen beide zijn meestal OK, maar niet tussen beide en latin1
  • utf8mb4 is een superset van utf8 .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 utf8mb4 op de tabelkolom(men) werkt waarschijnlijk in alle gevallen.
  • Kies anders een CHARACTER SET voor 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.



  1. Databasecorruptie voorkomen in Microsoft Access

  2. mysql-bestelling en groupby

  3. Hoe kan ik berichten met aanbevolen afbeeldingen uit een WordPress-database ophalen als WordPress niet langer is geïnstalleerd?

  4. Efficiënte toewijzing van percentiel/rang in MYSQL