Гуглил но так и не понял, как работает вставка значения в таблицу MySql.
Допустим такой запрос:
INSERT INTO employee(id, name) VALUES(200, 'Jason');
При наличии id=200, вернет исключение:
ERROR 1062 (23000): Duplicate entry '200' for key 'PRIMARY'
Меня интересует как БД узнала о наличии этого ключа? Перебирала все значения в таблице или осуществила бинарный поиск?
Раз описанный случай касается primary key, то логично предположить, что поиск осуществлялся в индексе, следовательно, он не был основан на переборе. Насчёт его бинарности в чистом виде почему-то тоже сомневаюсь, зависит от типа индекса.
Продвижение своими сайтами как стратегия роста и независимости