sql >> Database >  >> RDS >> Mysql

Mysql SET NAMES UTF8 - hoe kom ik er vanaf?

Het instellen van de codering van de verbinding tussen PHP en MySQL is de taak van PHP; Ik denk niet dat de MySQL-instelling daar invloed op heeft.

Ik zou echt aanraden om wat code in de toepassing te bewaren om de verbindingstekenset in te stellen op UTF-8. De applicatie moet ervoor zorgen dat de codering UTF-8 is, omdat het vermoedelijk aan webbrowsers zal vertellen dat de pagina's UTF-8 zijn, en als die niet overeenkomen, heb je problemen.

Aangezien het al deel uitmaakt van de verantwoordelijkheid van de toepassing om de tekenset te bepalen, kunt u de toepassing net zo goed de tekenset voor de databaseverbinding laten specificeren, in plaats van het te laten als een implementatieprobleem en nog een ding dat fout kan gaan bij het installeren van de app op een nieuwe server.

Persoonlijk zou ik echter mysql_set_charset gebruiken om dit te doen in plaats van SET NAMES .

Evenzo, als de applicatie code bevat om het schema te maken, zorg er dan voor dat de code MySQL vertelt om de tabellen UTF-8 te maken, in plaats van het over te laten aan de standaardinstellingen van de database en jezelf nog een implementatieprobleem te bezorgen om je zorgen over te maken.



  1. JPA Hibernate - cascade verwijderen in zowel database als annotatie

  2. Hoe een enkele tabel in de mysql-database te importeren met behulp van de opdrachtregel

  3. Hoe groepeer ik op continue bereiken

  4. Hoe specificeer ik een IN-clausule in laravel-rugzak?