sql >> Database >  >> RDS >> Mysql

Problemen bij het invoegen van utf-8-tekenreeks in de database en vervolgens uitvoeren naar webpagina

Ja, dat kan ik.
U hebt de Mysql-server niet verteld welke gegevenscodering u wilt.
Mysql kan elke codering leveren voor het geval uw paginacodering verschilt van de codering van opgeslagen gegevens. En hercodeer het on-the-fly.
Het moet dus worden geïnformeerd over de voorkeurscodering van de klant (je PHP-code is die databaseclient).
Standaard is het latin1 . Dus, omdat er geen dergelijke symbolen in de latin1-tekentabel zijn, worden in plaats daarvan vraagtekens geretourneerd.

Er zijn 2 manieren om mysql te vertellen welke codering we willen:

  • een iets meer geprefereerde is mysqli_set_charset() functie (methode in jouw geval).
  • minder voorkeur is SET NAMES vraag.

Maar zolang u de mysqli-extensie correct gebruikt, maakt het niet echt uit. (hoewel je dat niet bent)

Merk op dat in mysql deze codering utf8 wordt genoemd , zonder streepjes of spaties.



  1. JSON_UNQUOTE() – Verwijder aanhalingstekens uit een JSON-document in MySQL

  2. MySQL - GROUP BY met ORDER DESC werkt niet

  3. Een SQL Server-database maken met Azure Data Studio

  4. Het herstellen van de mysql-database geeft fouten