Usuwanie indexów

MA
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Poznań
1

Jak jednym zapytaniem usunąć wszystkie indexy z danej tabeli, które nie są utworzone poprzez PRIMARY ?

Odpada Alter table Drop index [name] , bo nie znam [name]

massther
  • Rejestracja: dni
  • Ostatnio: dni
0

Raczej nie ma takiej możliwości. Jaka baza danych? Z tabel systemowych można uzyskać nazwy wszystkich indexów. Poza tym jeśli możesz się przez jakieś gui połączyć z bazą to zazwyczja jest możliwość obejrzenia sobie jakie są indexy, więc także poznanie ich nazw.

OT
  • Rejestracja: dni
  • Ostatnio: dni
0

Na pewno się da, wystarczy cursor i pobranie nazw wszystkich indeksow

MA
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Poznań
0

no tak, zapomniałem podać że jedyny słuszny MySQL :P

massther
  • Rejestracja: dni
  • Ostatnio: dni
1
Kopiuj
SHOW INDEX
  FROM tbl_name
  FROM db_name

lub użyj INFORMATION_SCHEMA.STATISTICS http://dev.mysql.com/doc/refman/5.5/en/statistics-table.html
a później jak othello napisał kursor i jedziesz - usuwanie po kolei

MA
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Poznań
0

dzięki massther. Więc bez problemu można to zrobić zapytaniem :>

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.