Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: InnoDB czy jak jest klucz obcy to trzeba dodawać zwykły?
Forum PHP.pl > Forum > Bazy danych > MySQL
SIEF-IT
Mam pytanie do szanownych kolegów, czy jak mam tabelę (data_users) InnoDB, pole
  1. `data_user_id` MEDIUMINT(8) UNSIGNED NULL DEFAULT NULL
i klucz obcy do tabeli userów:
  1. FOREIGN KEY (`data_user_id`) REFERENCES `table_users` (`user_id`) ON DELETE SET NULL

To czy w tabeli zwykły klucz index na pole data_user_id przyspieszy odczyt czy nie i tylko spowolni zapis?

I drugie pytanie czy jak jest klucz podstawowy na oba pola w tabeli to pomoze cos dodanie osobnych indexow?
  1. PRIMARY KEY (`rel_prod_id`,`rel_cat_id`),
  2. KEY `rel_cat_id` (`rel_cat_id`),
  3. KEY `rel_prod_id` (`rel_prod_id`)
Crozin
1. Klucz obcy jest również zwykłym indeksem.
2. Jeżeli wykonujesz zapytania w oparciu o pojedynczą kolumnę to tak, założenie osobnych indeksów pomoże.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.