Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Составной ключ
 
 автор: S_7   (08.12.2015 в 11:38)   письмо автору
 
 

Столкнулся с такой табличкой

CREATE TABLE arttopics (
  topic_id mediumint(8) unsigned NOT NULL auto_increment,
  topic_pid mediumint(8) unsigned NOT NULL default '0',
  topic_imgurl varchar(255) NOT NULL default '',
  PRIMARY KEY  (topic_id),
  KEY idx (topic_pid,topic_id)
) TYPE=MyISAM;


Что означает составной ключ KEY idx (topic_pid,topic_id) типа INDEX ,для чего он может потребоваться .. и что означает Имя индекса : idx как им пользоваться в запросе ?

Заранее спасибо..

  Ответить  
 
 автор: Trianon   (08.12.2015 в 14:04)   письмо автору
 
   для: S_7   (08.12.2015 в 11:38)
 

1.составной ключ как есть.
типичный пример (улица, дом, квартира)
Обеспечивает естественную сортировку и поиск в случаях, когда естественный ключ (в моем случае - адрес) разделен на несколько полей.
2. ваш - рафинированный -случай (ид предка,ид) может быть полезен, например, если требуется быстрый вывод потомков определенного узла в порядке основного ключа.
3. имя помогает для изменения свойств таблицы - чтобы ссылаться на ключ для модификации или удаления. Или в сложных случаях чтобы принудительно заставить движок применять именно указуемый индекс.

  Ответить  
 
 автор: S_7   (08.12.2015 в 15:59)   письмо автору
 
   для: Trianon   (08.12.2015 в 14:04)
 

Спасибо за развёрнутый ответ . можно уточнить idx как использовать в запросе те можно пример куска запроса .. или это внутренний ключ БД, которым манипулирует сам движок mySQL

  Ответить  
 
 автор: Trianon   (08.12.2015 в 16:55)   письмо автору
 
   для: S_7   (08.12.2015 в 15:59)
 

ALTER TABLE arttopics DROP KEY idx;



ну а пример подсказки индекса -
http://dev.mysql.com/doc/refman/5.7/en/index-hints.html

  Ответить  
 
 автор: S_7   (08.12.2015 в 17:09)   письмо автору
 
   для: Trianon   (08.12.2015 в 16:55)
 

Спасибо , то что надо...

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования