[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Вопрос по ключам в таблице
maximka787
Ребят, недавно обнаружил особенность некоторых дампов в БД. Люди при создании структур таблиц делают поле KEY. Для чего это нужно?
Вот мои две таблицы простые. Нужен ли там KEY?

CREATE TABLE `firma` (
`id` int(10) unsigned NOT NULL auto_increment,
`name` varchar(200) NOT NULL,
PRIMARY KEY (`id`)
)
ENGINE=MyISAM;


CREATE TABLE `opisanie` (
`id` int(10) unsigned NOT NULL auto_increment,
`id_firma` int(10) unsigned NOT NULL,
`text` text,
PRIMARY KEY (`id`),
KEY (`id_firma`) /* вот тут зачем поле ключ? */
) ENGINE=MyISAM;


Или зависит от связи один к одному или многим?

_____________
..Работает - не трогай!
Michael
Это индекс так создается. Нужен - для быстроты.
Конкретно для id_firma` он нужен т.к. это внешний ключ для другой таблицы.

_____________
There never was a struggle in the soul of a good man that was not hard
maximka787
Michael
Спасибо, реально скорость ровно в 10 раз выше чем у таблицы без индексов (в больших таблицах). 3 года работаю и не знал этого....

_____________
..Работает - не трогай!
Invis1ble
Цитата
3 года работаю и не знал этого....
maximka787
Invis1ble
Да как-то скорость запроса и так в сотых секундах, на таблицах в 3000 - 5000 строк, оно сразу то и не видно, оно вообще не видно. Так же осваиваю EXPLAIN smile.gif

_____________
..Работает - не трогай!
Michael
Свернутый текст
киллер, видел эту тему? cool.gif


_____________
There never was a struggle in the soul of a good man that was not hard
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.