Mysql
 sql >> Datenbank >  >> RDS >> Mysql

node.js/MySQL:Einige Zeichenfolgencodierungen (Emoji) werfen Fehler, wenn ich versuche, sie in die Datenbank einzufügen

Die wahrscheinliche Antwort ist, dass die MySQL-Verbindung utf8mb4 nicht angegeben hat . (Insbesondere MySQLs utf8 wird nicht genügen für Emoji.) Können Sie den Verbindungscode angeben? Hier ist ein Fallback:Führen Sie dies aus, nachdem Sie sich mit MySQL verbunden haben:

SET NAMES utf8mb4

Eine andere mögliche Antwort ist, dass der Webserver die Seite nicht als UTF-8 behandelt . Eine Möglichkeit, dies zu lösen, ist dies in <head> :

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

Und die Spalte muss CHARACTER SET utf8mb4 sein , nicht ut8 .

node.js-Verbindungspooling

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

Siehe stackoverflow