Si 😼 faisait trébucher, c'est parce que 😼 n'est pas dans le plan multilingue de base d'Unicode ; il se trouve dans le plan multilingue supplémentaire, qui est au-dessus de U+FFFF et occupe 4 octets en UTF-8 au lieu de 3. Les implémentations Unicode entièrement conformes ne les traitent pas différemment, mais le jeu de caractères MySQL utf8 n'accepte pas les caractères au-dessus de U+FFFF. Si vous avez une version récente de MySQL, vous pouvez ALTER TABLE pour utiliser utf8mb4 qui gère correctement tous les caractères Unicode. Il y a quelques pièges à changer, car MySQL alloue 4 octets par caractère au lieu de 3; voir http://dev.mysql.com/ doc/refman/5.5/en/charset-unicode-upgrading.html pour les détails.
Ce problème est un doublon de L'insertion d'une chaîne encodée en UTF-8 dans la table mysql encodée en UTF-8 échoue avec "Valeur de chaîne incorrecte" .