sql >> Database teknologi >  >> RDS >> Mysql

Flask_SQLAlchemy, MySQL, gemme svenske tegn å, ä, ö?

Da du bruger Python 2.7, skal du angive, at din streng indeholder unicode.

>>> db.session.add(Users(u'ä'))

Du kan også bruge en fremtidig import til at behandle alle strenge som unicode.

from __future__ import unicode_literals

Alternativt kan du opgradere din version af Python. 2.7 er den sidste version, der behandler strenge som bytes i stedet for unicode.

Rediger

Du skal også opdatere din __repr__ så den håndterer unicode korrekt.

def __repr__(self):
    return self.name.decode('utf-8')

eller hvilken som helst kodning du vil bruge.

Generelt skal du sørge for at håndtere kodning fra og afkodning til unicode. Jeg kan ikke opfordre dig nok til at overveje at bruge en nyere version af Python. En af de største ændringer i Python 3 løser netop dette problem.



  1. Kunne ikke finde konverteringsfunktion fra ukendt til tekst

  2. SQL Server:Dynamisk where-klausul

  3. Sådan importeres data fra tekstfil til mysql-database

  4. Sådan fjerner du den rigtige polstring på dagsnavnet i Oracle