Gdy uruchamiasz zapytanie w bazie danych MySQL, MySQL używa wielu zmiennych systemowych w celu określenia zestawu znaków i sortowania, które mają być używane przy uruchamianiu zapytań. Jeśli klient używa innego zestawu znaków niż serwer, MySQL może go przetłumaczyć na odpowiedni zestaw znaków i sortowanie.
Wysyłając wyniki zapytania z powrotem do klienta, MySQL może w razie potrzeby przetłumaczyć te wyniki z powrotem na inny zestaw znaków. MySQL używa zmiennych systemowych do określenia, które zestawy znaków i sortowania mają być używane w każdym z tych kroków.
Poniżej wyszczególniono sortowanie połączeń:
SELECT @@collation_connection;
Przykładowy wynik:
+------------------------+ | @@collation_connection | +------------------------+ | utf8mb4_0900_ai_ci | +------------------------+
Korzystanie z SHOW VARIABLES
Oświadczenie
Inny sposób na pobranie collation_connection
zmienna systemowa ma używać SHOW VARIABLES
instrukcja zwracająca różne zmienne systemowe związane z sortowaniem. Najprostszym sposobem na to jest użycie LIKE
klauzula, aby zawęzić ją tylko do zmiennych, które zaczynają się od collation
. Tak:
SHOW VARIABLES LIKE 'collation%';
Zwraca sortowanie dla serwera, połączenia i bazy danych. Tak:
+----------------------+--------------------+ | Variable_name | Value | +----------------------+--------------------+ | collation_connection | utf8mb4_0900_ai_ci | | collation_database | utf8_general_ci | | collation_server | utf8mb4_0900_ai_ci | +----------------------+--------------------+
Możesz również zwrócić wszystkie zmienne systemowe zestawu znaków za pomocą następującego zapytania:
SHOW VARIABLES LIKE 'character_set%';
Przykładowy wynik:
+--------------------------+----------------------------------+ | Variable_name | Value | +--------------------------+----------------------------------+ | character_set_client | utf8mb4 | | character_set_connection | utf8mb4 | | character_set_database | utf8 | | character_set_filesystem | binary | | character_set_results | utf8mb4 | | character_set_server | utf8mb4 | | character_set_system | utf8 | | character_sets_dir | /usr/local/mysql/share/charsets/ | +--------------------------+----------------------------------+
Zobacz także:
- Jak znaleźć sortowanie w MySQL
- Pokaż sortowanie serwera
- Pokaż sortowanie bazy danych
- Pokaż układ tabeli
- Pokaż sortowanie kolumny
- Co to jest sortowanie?