UTF-8 jest przygotowany na dominację nad światem, Latin1 nie jest.
Jeśli próbujesz przechowywać znaki inne niż łacińskie, takie jak chiński, japoński, hebrajski, rosyjski itp. przy użyciu kodowania Latin1, zostaną one oznaczone jako mojibake . Możesz znaleźć wstępny tekst ten artykuł przydatne (a nawet więcej, jeśli znasz trochę Javę).
Zauważ, że pełna obsługa 4-bajtowego UTF-8 została wprowadzona tylko w MySQL 5.5. Przed tą wersją zwiększa się tylko do 3 bajtów na znak, a nie do 4 bajtów na znak. Obsługiwał więc tylko samolot BMP, a nie m.in. samolot Emoji. Jeśli chcesz pełną obsługę 4-bajtowego UTF-8, zaktualizuj MySQL do co najmniej 5.5 lub wybierz inny RDBMS, taki jak PostgreSQL. W MySQL 5.5+ nazywa się to utf8mb4
.