индексы - это к понятию перебор и когда он производится. К хранению и использованию данных - нормальные формы. теперь распиши свою структуру и обоснуй.
id - int 11 to - varchar(100) from - varchar(100) time - bigint(20) theme - varchar(255) message - text А какая структура?
Получается, чтобы заиметь вторую нормальную форму, нужно разбить на две таблицы: [link] id - int(11) to - varchar(100) from - varchar(100) и [mes] id - int 11 lid - int(11) time - bigint(20) theme - varchar(255) message - text Так? Но где выгода, я понять не могу. Ибо теперь для выдёргивания придётся юзать либо перекрёстный запрос, либо просто 2. Разве один не будет быстрее? Эт я для себя, чтоб линк не искать http://ru.wikipedia.org/wiki/Нормальная_форма
Ну в таблице [link] id нужен для того, чтобы проассоциировать запись с таблицей [mes]. id в таблице [mes] нужен, как примари кей, чтобы точно идентифицировать запись в коде. А lid - это один из id из таблицы [link]. Пришёл к этому вот по этому примеру: Сотрудник Должность Зарплата Гришин Менеджер 30000 Васильев Программист 40000 Петров Программист 40000 В результате приведения к 2NF получим две таблицы: Сотрудник Должность Гришин Менеджер Васильев Программист Петров Программист Должность Зарплата Менеджер 30000 Программист 40000
Возвращаемся к первому пункту и сначала думаем, что надо сделать. Не "сделали и подумади а зачем", а наоборот. Какие аномалии есть в исходной таблице? зы русскоязычная вики дурна.
id - int 11 - нужен в любом случае, ибо никакое другое поле не даёт полной идентификации записи to - varchar(100) - не выбросить from - varchar(100) - не выбросить time - bigint(20) - Тоже врятли выкинуть theme - varchar(255) - Собственно без этого теряет смысл message - text - не выбросить
Danilka, ответь на пару вопросов: 1. Почему в примере из вики в отдельную таблицу выделены именно эти поля? 2. Какие поля у тебя в структуре соответствуют каким в примере и почему?
Как я понимаю: Есть некоторые критерии присвоенные одному уникатьному параметру. В нашем случае параметром выступает должность: Программист, Менеджер. А во второй таблице уже каждому человеку вешают лэйбочку о том, кто он такой и соответственно он автоматически получает набор параметров из второй таблицы. Допустим у нас есть узер, зарегеный в форуме. Он пренадлежит какой-то группе и наследует все права и возможности группы. Так и тут. Как это применить к моему случаю что-то не догоняю.