sql >> Databasteknik >  >> RDS >> Mysql

Hur ökar jag nyckellängden i MySQL 5.1?

InnoDB tillåter faktiskt bara 768 BYTES i indexet. Observera också att UTF-8-kodade strängar tar upp 3 byte per tecken, så du har bara 768/3 tecken att spela med i indexet i så fall.

En möjlig lösning är att begränsa längden på fältanvändningen i indexet. Men eftersom du också vill ha ett unikt index kanske det inte är en acceptabel lösning för dig. Använd följande för att begränsa längden på fälten som används.

CREATE UNIQUE INDEX `index_matches_on_foo_and_bar_id_and_baz_id` ON `matches` (`foo`(100), `bar_id`(100), `baz_id`(100))


  1. PHP PDO:Kan inte ansluta, ogiltigt katalognamn

  2. Distribuera och hantera PostgreSQL 11:Nytt i ClusterControl 1.7.1

  3. MySQL automatisk inkrement mellan tabeller

  4. SQL IN Klausul 1000 objektgräns