sql >> Databasteknik >  >> RDS >> Mysql

MySQL 1062 - Duplicera post '0' för nyckel 'PRIMÄR'

Du måste ange primärnyckeln som automatisk ökning

CREATE TABLE `momento_distribution`
  (
     `momento_id`       INT(11) NOT NULL AUTO_INCREMENT,
     `momento_idmember` INT(11) NOT NULL,
     `created_at`       DATETIME DEFAULT NULL,
     `updated_at`       DATETIME DEFAULT NULL,
     `unread`           TINYINT(1) DEFAULT '1',
     `accepted`         VARCHAR(10) NOT NULL DEFAULT 'pending',
     `ext_member`       VARCHAR(255) DEFAULT NULL,
     PRIMARY KEY (`momento_id`, `momento_idmember`),
     KEY `momento_distribution_FI_2` (`momento_idmember`),
     KEY `accepted` (`accepted`, `ext_member`)
  )
ENGINE=InnoDB
DEFAULT CHARSET=latin1$$

När det gäller kommentaren nedan, vad sägs om:

ALTER TABLE `momento_distribution`
  CHANGE COLUMN `id` `id` INT(11) NOT NULL AUTO_INCREMENT,
  DROP PRIMARY KEY,
  ADD PRIMARY KEY (`id`);

En PRIMÄRNYCKEL är ett unikt index, så om den innehåller dubbletter kan du inte tilldela kolumnen att vara unikt index, så du kan behöva skapa en ny kolumn helt och hållet



  1. Hur får jag den aktuella tidszonen för MySQL?

  2. ORACLE - ORA-01843:inte en giltig månad

  3. Nyfiken problem med Oracle UNION och ORDER BY

  4. En första titt på den nya SQL Server Cardinality Estimator