Това е само проблем с MySQL -
MySQL има различни двигатели - MyISAM, InnoDB, Memory...
MySQL има различни ограничения за количеството пространство, което можете да използвате за дефинирайте индекси на колона(и) - за MyISAM това е 1000 байта; това е 767 за InnoDB
. И типът данни на тези колони има значение - за VARCHAR
, това е 3x, така че индекс на VARCHAR(100)
ще заеме 300 от тези байта (защото 100 знака * 3 =300).
За да осигурите известна индексация, когато достигнете стойността на тавана, можете да дефинирате индекса по отношение на части от типа данни на колоната:
CREATE INDEX example_idx ON YOUR_TABLE(your_column(50))
Ако приемем, че your_column
е VARCHAR(100)
, индексът в примера по-горе ще бъде само на първите 50 знака. Търсенето на данни над 50-ия знак няма да може да използва индекса.