Mam problem, temat trochę nie przekazuje tego co bym chciał zrobić, muszę napisać więcej, a wiec:
mam tabele:
DROP TABLE IF EXISTS `quantity`; CREATE TABLE IF NOT EXISTS `quantity` ( `product_id` int(11) NOT NULL, `quantity` int(11) NOT NULL, `warehouse_id` int(11) NOT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
i teraz chciałbym tak ją zdefiniować aby unikalne były para dwóch wierszy, w sensie aby tylko raz produkt mógł być na magazynie i on abym mógł dodać np tak:
INSERT INTO `quantity` (`product_id`, `quantity`, `warehouse_id`) VALUES ('1015', '10', '1') INSERT INTO `quantity` (`product_id`, `quantity`, `warehouse_id`) VALUES ('1015', '10', '2') INSERT INTO `quantity` (`product_id`, `quantity`, `warehouse_id`) VALUES ('2222', '10', '1') INSERT INTO `quantity` (`product_id`, `quantity`, `warehouse_id`) VALUES ('2222', '10', '2')
i aby już
drugi raz się nie dało dodać
INSERT INTO `quantity` (`product_id`, `quantity`, `warehouse_id`) VALUES ('1015', '10', '2')
narazie takie coś mam, ale nie dokonca działą tak jak bym chciał
ALTER TABLE `quantity` ADD KEY `warehouse_id` (`warehouse_id`), ADD KEY `product_id` (`product_id`);
ALTER TABLE `quantity` ADD CONSTRAINT `quantity_ibfk_1` FOREIGN KEY (`product_id`) REFERENCES `products` (`product_id`), ADD CONSTRAINT `quantity_ibfk_2` FOREIGN KEY (`warehouse_id`) REFERENCES `warehouse` (`warehouse_id`);
bo jak nie mam żadnego unikalnego klucza to nie da się edytować takiej tabeli