PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

PG::Errore:ERRORE:sequenza di byte non valida per la codifica UTF8:0xfc

Un U-umlaut minuscolo è 0xfc in ISO 8859-1 (AKA Latin-1) ma 0xfc non è un carattere UTF-8 valido. Il problema è che hai una stringa Latin-1 che stai cercando di trattare come UTF-8 e PostgreSQL si sta giustamente lamentando.

Correggi l'origine dati per inviarti UTF-8 o, se ti invierà sempre Latin-1, correggi tu stesso la codifica con qualcosa del tipo:

utf_8_string = latin_1_string.force_encoding('iso8859-1').encode('utf-8')

e poi lavora con utf_8_string versione.