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

Pythonで(utf8mb4)をエンコードする方法

    絵文字やU+FFFFコードポイントを超える他の文字のために、PythonとMySQLの間でUTF-8文字の全範囲を正しく交換することに苦労しました。

    すべてが正常に機能することを確認するために、次のことを行う必要がありました。

    1. utf8mb4を確認してください CHARに使用されました 、VARCHAR 、およびTEXT MySQLの列
    2. PythonでUTF-8を適用する
    3. PythonとMySQLの間で使用されるUTF-8を強制します

    PythonでUTF-8を適用するには、Pythonスクリプトの1行目または2行目として次の行を追加します。

    # -*- coding: utf-8 -*-
    

    PythonとMySQLの間にUTF-8を適用するには、次のようにMySQL接続を設定します。

    # Connect to mysql.
    dbc = MySQLdb.connect(host='###', user='###', passwd='###', db='###', use_unicode=True)
    
    # Create a cursor.
    cursor = dbc.cursor()
    
    # Enforce UTF-8 for the connection.
    cursor.execute('SET NAMES utf8mb4')
    cursor.execute("SET CHARACTER SET utf8mb4")
    cursor.execute("SET character_set_connection=utf8mb4")
    
    # Do database stuff.
    
    # Commit data.
    dbc.commit()
    
    # Close cursor and connection.
    cursor.close()
    dbc.close()
    

    このように、encodeなどの関数を使用する必要はありません。 およびutf8_encode



    1. SQLServerでのデータベースオブジェクトとテーブルデータの検索

    2. SQL標準UPSERT呼び出し

    3. MySQL-IN()内のORDERBY値

    4. Windowsコマンドスクリプトでsql*plusを使用してフローを制御するにはどうすればよいですか?