Задача: создать таблицу с тремя столбцами - TovarName, TovarID и ProizvoditelID. Как первичный ключ используется поле TovarID. Подскажите пожалуйста как сделать так, чтобы при добавлении записей в таблицу: 1) можно было добавлять несколько записей с одинаковым полем TovarName, если производители разные; 2) можно было добавлять несколько записей с одинаковым полем ProizvoditelID, если товары разные; 3) нельзя было добавлять несколько записей с одинаковыми полями TovarName и ProizvoditelID. Можно ли ограничить ввод подобных полей при создании таблицы или надо посылать запрос нет ли уже такого товара у такого производителя, или как? БД в данном случае MySQL.
Код (Text): CREATE TABLE products ( TovarID int unsigned not null auto_increment, TovarName varchar(255) not null, ProizvoditelID tinyint unsigned not null, PRIMARY KEY (TovarID), UNIQUE KEY uniq_product (ProizvoditelID,TovarName) ); может так?
Да, не смотря на то, что в моей книге этот момент не описан, все работает так как надо. Спасибо. А uniq_product можно как-то использовать? Честно говоря мне не совсем понятно значение этого идентификатора. Если бы я не знала синтаксиса языка, я бы написала так: Код (Text): UNIQUE KEY (ProizvoditelID,TovarName)