Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Составление SQL-запросов > уникальный ключ на два поля можно?


Автор: azam 19.8.2008, 12:37
есть такая таблица MySQL

Код

CREATE TABLE IF NOT EXISTS `table` (
  `vi_v` int(10) NOT NULL COMMENT 
  `vi_i` varchar(100) NOT NULL,
  `vi_count` int(10) NOT NULL COMMENT 
) ENGINE=MyISAM DEFAULT CHARSET=utf8;



можно ли установить на два поля уникальный ключ?

чтобы  записей с такими данными не повторялись vi_v = 1, vi_i = 2
т.е. каждое поле отдельно может повторятся  vi_v = 1, vi_v = 1, vi_v = 1 и т. д. или  vi_i = 2, vi_i = 2, vi_i = 2
а комбинация  vi_v = 1, vi_i = 2 не могла

Автор: Akina 19.8.2008, 12:47
Можно, конечно.
Код

CREATE UNIQUE INDEX `vi`
ON `table` (`vi_v`, `vi_i` )

Автор: azam 19.8.2008, 12:49
При много благодарен!!!

Автор: aleksh 19.8.2008, 12:50
естественно, за мускул не скажу, но в ms sql сие делается созданием индекса на два поля с unique

надо быстрей печатать...

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)