phpMyAdmin
 sql >> Baza danych >  >> Database Tools >> phpMyAdmin

Przechowywanie danych MySQL w kurdyjskiej czcionce?

Co się stało:

  • miałeś dane zakodowane w utf8 (dobre)
  • SET NAMES latin1 obowiązywał (domyślnie, ale źle)
  • kolumna została zadeklarowana CHARACTER SET latin1 (domyślnie, ale źle)

Podczas INSERTed dane, zostały przekonwertowane na latin1, który nie ma wartości dla znaków arabskich (kurdyjski/farsi/itp.), więc zastąpiły je znaki zapytania.

Lekarstwo (na przyszłe INSERTs ):

  • dane zakodowane w formacie utf8 (dobre)
  • mysqli_set_charset('utf8') (lub cokolwiek, czego potrzebuje twój klient do ustanowienia CHARACTER SET )
  • sprawdź, czy domyślne kolumny i/lub tabela to CHARACTER SET utf8
  • Jeśli wyświetlasz na stronie internetowej, <meta...utf8> powinien znajdować się blisko góry.

Powyższa dyskusja dotyczy CHARACTER SET , kodowanie znaków. A teraz wskazówka na temat COLLATION , który służy do porównywania i sortowania.

Aby dokładnie sprawdzić, czy dane są przechowywane poprawnie, wykonajSELECT col, HEX(col)... .
ه‌رچوون powinien wrócić D987E2808CD8B1DA86D988D988D986
Znaki arabskie w utf8 mają szesnastkę D8xx lub D9xx.

(utf8mb4 działa tak samo dobrze jak utf8; albo działa w języku arabskim.)

Zła wiadomość:dane, które zostały wstawione i przekształcone w „???” nie można odzyskać.



  1. DBeaver
  2.   
  3. phpMyAdmin
  4.   
  5. Navicat
  6.   
  7. SSMS
  8.   
  9. MySQL Workbench
  10.   
  11. SQLyog
  1. Hasło PhpMyAdmin

  2. Tworzysz/piszesz plik XML w PHP?

  3. Czy mogę ustawić harmonogram wydarzeń MySQL za pomocą phpMyAdmin?

  4. Odmowa dostępu phpMyAdmin

  5. Przeszukiwanie bazy danych za pomocą phpMyAdmin