ERROR 1267 (HY000): Illegal mix of collations (utf8mb4_unicode_ci,IMPLICIT) and (utf8mb4_general_ci,IMPLICIT) for operation '='. – MySQL 1267

1267

Si verifica durante join o confronti `=` tra due colonne o espressioni che utilizzano collation incompatibili (es. utf8mb4_unicode_ci e utf8mb4_general_ci); si risolve allineando le collation con `COLLATE`.

Cosa significa questo errore?

Si verifica durante join o confronti `=` tra due colonne o espressioni che utilizzano collation incompatibili (es. utf8mb4_unicode_ci e utf8mb4_general_ci); si risolve allineando le collation con `COLLATE`.

Messaggio originale

ERROR 1267 (HY000): Illegal mix of collations (utf8mb4_unicode_ci,IMPLICIT) and (utf8mb4_general_ci,IMPLICIT) for operation '='.

Contesto e parole chiave

Alias

  • 1267
  • ER_CANT_AGGREGATE_2COLLATIONS

Messaggi alternativi

  • combinazione illegale di collation utf8mb4 confronto stringhe fallito

Prodotti

  • MySQL Server / Percona Server / MariaDB / InnoDB Engine

Piattaforme

  • Linux
  • macOS
  • Multipiattaforma
  • Windows Server

Parole chiave

  • 1267
  • database
  • errore-mysql-1267-illegal-mix-of-collations
  • innodb
  • mysql
  • mysql.sql.1267-illegal-mix-of-collations
  • SQL e Query

Cause possibili

Origine del problema per MySQL: Errore 1267 — combinazione illegale di collation (Illegal mix of collations)

Si verifica durante join o confronti `=` tra due colonne o espressioni che utilizzano collation incompatibili (es. utf8mb4_unicode_ci e utf8mb4_general_ci); si risolve allineando le collation con `COLLATE`.

molto comune

Diagnosi

Ispezione diagnostica MySQL per MySQL: Errore 1267 — combinazione illegale di collation (Illegal mix of collations)

Eseguire comandi di controllo di stato nel client MySQL o consultare il file di log degli errori /var/log/mysql/error.log.

Come leggere il risultato. Mostra lo stato interno di lock, transazioni in corso o errori di allocazione e vincoli relazionali.

mysql
SHOW ENGINE INNODB STATUS\G

Risoluzione

Procedura di risoluzione per MySQL: Errore 1267 — combinazione illegale di collation (Illegal mix of collations)

Difficoltà: mediaRischio: basso

Applicare la correzione al database o alla query secondo le best practice di amministrazione MySQL.

  1. Ispezionare la sintassi della query o la configurazione delle variabili
  2. Regolare i parametri in my.cnf o correggere i vincoli DDL
  3. Testare nuovamente la connessione o l'esecuzione della transazione

Domande frequenti

Come risolvere il codice 1267 in MySQL?

Si verifica durante join o confronti `=` tra due colonne o espressioni che utilizzano collation incompatibili (es. utf8mb4_unicode_ci e utf8mb4_general_ci); si risolve allineando le collation con `COLLATE`.

Approfondimenti

Schede correlate