sql >> データベース >  >> RDS >> Mysql

node.js/MySQL:データベースに挿入しようとすると、一部の文字列エンコーディング(Emoji)がエラーをスローします

    考えられる答えは、MySQL接続でutf8mb4が指定されていないことです。 。 (具体的には、MySQLのutf8 しない 絵文字で十分です。)接続コードを教えていただけますか?フォールバックは次のとおりです。MySQLに接続した後にこれを実行します:

    SET NAMES utf8mb4
    

    もう1つの考えられる答えは、WebサーバーがページをUTF-8として扱っていないことです。 。これを解決する1つの方法は、<head>でこれを使用することです。 :

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

    また、列はCHARACTER SET utf8mb4である必要があります 、ut8ではありません 。

    node.js接続プール

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

    stackoverflow を参照してください



    1. 列を行に転置する

    2. MicrosoftAccessのナビゲーションボタンからマクロを実行する方法

    3. MySQLまたはPostgreSQLにTEXTフィールドがある場合、それを別のテーブルに配置する必要がありますか?

    4. BIGINTUNSIGNED値が範囲外です