Ich habe eine Zeichenfolge zu speichern, die Use O Mozilla Que Não Trava! Testei! $vip ou $apoio
Der Versuch, Sonderzeichen in MySQL DB
wie diese aussieht, wenn ich versuche, es zu meiner Datenbank zu speichern mit ...SET description = %s...
und cursor.execute(sql, description)
es mir ein Fehler
Warnung gibt: (1366, „Falscher String-Wert: '\ xF0 \ x9F \ x94 \ xB4Us ...' für die Spalte 'Beschreibung' ...
Angenommen, dies ein ASCII-Symbol ist, habe ich versucht, description.decode('ascii')
aber dies führt zu
Objekt ‚str‘ hat kein Attribut ‚decode‘
Wie kann ich feststellen, was es codiert ist und wie könnte ich speichere so etwas in die Datenbank? Die Datenbank wird utf-8 codiert, wenn dies wichtig ist.
Ich benutze Python3 und PyMySQL.
Alle Hinweise erwünscht!
Die erste Abfrage gibt 'utf8' ich mit pyMysql init mit' verbinden = pymysql.connect (host = constants.HOST, user = constants.USERNAME, password = constants.PASSWORD, db = constants.DATABASE, charset = 'utf8', port = Konstanten.PORT, cursorclass = pymysql.cursors.DictCursor) 'Also sollte es eigentlich kein Problem geben? – PrimuS
@PrimuS Gerade bemerkt, dass es ein Emoji gibt. Sie benötigen utf8mb4 für den Spaltenzeichensatz. utf8 ist nicht genug. Siehe http://stackoverflow.com/questions/35125933/mysql-utf8mb4-errors-when-saving-emojis – jiulongw