sql >> Databasteknik >  >> RDS >> Mysql

När ska man använda utf-8 och när ska man använda latin1 i MySQL?

Det tar 1 bytes för att lagra en latin1 tecken och 1 till 3 bytes för att lagra en UTF8 tecken.

Om du bara använder grundläggande latinska tecken och skiljetecken i dina strängar (0 till 128 i Unicode ), kommer båda teckenuppsättningarna att uppta samma längd.

Om du har en kolumn med VARCHAR(334) eller längre, MyISAM låter dig inte skapa ett index på den eftersom det finns en avlägsen möjlighet för kolumnen att uppta mer än 1000 byte.

Observera att nycklar av sådan längd sällan är användbara. Du kan skapa ett prefixindex som kommer att vara nästan lika selektivt för alla verkliga data.



  1. Välj första posten om ingen matchar

  2. Hur använder man en uppsättning värden från PHP i 'IN'-satsen i mysql-frågan?

  3. ORA-00979 inte en grupp efter uttryck

  4. Gräver djupare i Django-migrationer