Связи таблиц в MySQL

  • Автор темы Автор темы Dept.K
  • Дата начала Дата начала

Dept.K

Новичок
Связи таблиц в MySQL

Прочитал статью http://phpclub.ru/detail/article/2000-12-06 но с теорией по mysql у меня плоховато, реализовать на моей задаче не могу, не понимаю как...

Задача следующая:
Необходимо связать две таблицы: производители принтеров и модели принтеров. Одна таблица содержит всех производителей, другая все модели всех производителей соответственно.

Должно получиться так:
Из раскрывающегося списка я выбираю производителя, потом модель тоже из раскрывающегося списка, расположенного рядом, при этом после выбора производителя, остаются только модели выбранного производителя.

Как я понимаю должно быть что-то типа:
PHP:
$result = mysql_query("SELECT producer.id as producername, model.id as modelname 
FROM producer, models WHERE producer.model=model.id",$db);
После чего результат запихиваем в массив и извлекаем как надо.
 
Dept.K
судя по твоему запросу, у производителя может быть только одна модель принтеров
 
в том-то и дело... этот запрос вообще не работает... я не могу понять смысл объединения producer.id в этой функции, не этого конкретно, но подобного этому
 
Re: Связи таблиц в MySQL

PHP:
$result = mysql_query("SELECT producer.id as producername, model.id as modelname 
FROM producer, models LEFT INNER JOIN models ON producer.model=model.id WHERE producer.id = {твое значение выбора}",$db);
На слух как-то так или скинь структуру таблиц
 
У тебя 1 производитель связан со многими моделями. А в запросе ты пишешь, что 1 запись о производителе связана с 1 записью о модели. Связывай модель с производителем, а не наоборот.
 
Re: Re: Re: Связи таблиц в MySQL

Автор оригинала: Beavis
ага)) щас я всё брошу и буду создавать тебе структуру таблиц))))
Извиняюсь, я ошибся адресом, это я Dept.K, хотя почему ты решил что я это тебе? :)
 
структура проще некуда:
1ая: id и producer
пример: id producer
1 HP
2 Xerox
3 Brother
2ая: id и model
пример: id model
1 LJ 1010
2 WC PE120i
3 DCP - 7030R

я просто не могу понять принцип связывания, мануалы читал
 
Сверху