Mysql
 sql >> Database >  >> RDS >> Mysql

node.js/MySQL:alcune codifiche di stringhe (Emoji) generano errori quando provo a inserirle nel database

La risposta probabile è che la connessione MySQL non ha specificato utf8mb4 . (In particolare, utf8 di MySQL non è sufficiente per Emoji.) Puoi fornire il codice di connessione? Ecco un fallback:eseguilo dopo esserti connesso a MySQL:

SET NAMES utf8mb4

Un'altra possibile risposta è che il server web non tratta la pagina come UTF-8 . Un modo per risolvere questo problema è con questo nel <head> :

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 

E la colonna deve essere CHARACTER SET utf8mb4 , non ut8 .

pooling di connessioni node.js

var connection = mysql.createConnection({ ... , charset : 'utf8mb4'});

Vedi stackoverflow