Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Zestaw znaków i kodowanie Django

Ustaw charset opcja utf8mb4 w OPTIONS dykt DATABASES ustawienie w pliku ustawień Django:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'my_db',
        'USER': 'my_user',
        'PASSWORD': 'my_pass',
        'HOST': 'my.host',
        'OPTIONS': {
            'charset': 'utf8mb4'  # This is the important line
        }
    }
}

Te opcje zostaną przekazane jako argumenty do funkcji połączenia sterownika mysql, którą zazwyczaj jest mysqlclient . Tutaj możesz zobaczyć w dokumentacji wszystkie te parametry:

https://mysqlclient.readthedocs.io/user_guide.html#functions-and -atrybuty

Jeśli używasz innego sterownika w przypadku mysql możesz potrzebować innej opcji.

Upewnij się również, że w bazie danych MySQL zestaw znaków kolumny, tabeli lub całej bazy danych jest ustawiony na utf8mb4 . Aby uzyskać więcej informacji o zestawach znaków w MySQL zobacz:

Dokumentacja MySQL:Określanie zestawów znaków i ich sortowania
Dokumentacja MySQL:Zestaw znaków utf8mb4 (4-bajtowe kodowanie Unicode UTF-8)
Przepełnienie stosu:Jaka jest różnica między zestawami znaków utf8mb4 i utf8 w MySQL?

W Django istnieje ciągłe żądanie ściągnięcia, aby utworzyć utf8mb4 wartość domyślna:https://github.com/django/django/pull/8886



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak połączyć się z puli instancji Google Compute Engine z Cloud SQL DB w tym samym projekcie?

  2. Odczytywanie ustawień podrzędnych, odczytywanie i zapisywanie ustawień głównych

  3. Dlaczego nadal potrzebuję zainstalowanego na komputerze łącznika MySQL, mimo posiadania odpowiednich pakietów NuGet?

  4. Funkcja SUMA PHP

  5. Znacznik czasu MySQL wybierz zakres dat