[mysql] Indeksy w dla tabeli z trzema kolumnami? |
[mysql] Indeksy w dla tabeli z trzema kolumnami? |
1.09.2017, 15:24:27
Post
#1
|
|
Grupa: Zarejestrowani Postów: 138 Pomógł: 0 Dołączył: 7.01.2015 Ostrzeżenie: (0%) |
Witam.
Zastanawiam isę nad pewną sprawą, jak ustalić indeksy dla tabeli z trzema kolumnami. Chodzi o tabele konfiga, ale z dodatkowym polem dla numeru serwisu. Więc mam tak: TABELA CONFIG_MULTI: 1. CMS_ID 2. PARAM 3. WARTOŚĆ. Więc tak, większośc zapytań wygląda ta, że wybieram koumne WARTOŚĆ dla CMS_ID=XXX i PARAM='poszukiwany param'. Próbowałem zaznaczyć CMS_ID i PARAM jako podstawowe, albo jednoznaczne, ale zwraca mi komunikat: Cytat #1071 - Specified key was too long; max key length is 1000 bytes Mimo, że tabela jest jeszcze pusta. Ostatecznie ustawiłem zwykłe indeksy na kolumna CMS_ID i drugi index na PARAMETR. Czy dobrze to robie? P.S. Czy pola, które potrzebuje wybrać też warto dawać do indexu? Czytylko to po czym szukam w parametrze WHERE? |
|
|
1.09.2017, 15:41:46
Post
#2
|
|
Grupa: Moderatorzy Postów: 36 440 Pomógł: 6290 Dołączył: 27.12.2004 |
A czy przypadkiem dla pola PARAM nie ustawiles typu jako TEXT?
-------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
1.09.2017, 16:56:20
Post
#3
|
|
Grupa: Zarejestrowani Postów: 8 068 Pomógł: 1414 Dołączył: 26.10.2005 Ostrzeżenie: (0%) |
No i oczywiście CMS_ID i PARAM powinny być ustawione jako primary żeby nie duplikować indeksów.
|
|
|
Wersja Lo-Fi | Aktualny czas: 28.03.2024 - 20:39 |