MySQL 在一个表上同时创建多个索引,并且使用PRIMARY KEY 的列必须是一个具有NOT NULL 属性的列。
比如
像我这样,主键有两个,seller_id ,product_type,就会报错--1171。因为,有primary key 的这一列必须是not null属性,而product type 为null 属性。
所以,解决方案:
1.采用unique关键字;
因为unique关键字是让索引列中的所有值只出现一次,而且必须是唯一的。这就避免了上述第一句话。就算product_type 属性为null也没关系、
2.通过在语句最后加上一个PRIMARY KEY (col_name…)子句的方式来实现。