Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

MySQL 1062 - Mục nhập trùng lặp '0' cho khóa 'CHÍNH'

Bạn cần chỉ định khóa chính là tự động tăng

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$$

Liên quan đến bình luận bên dưới, làm thế nào về:

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

TỪ KHÓA CHÍNH là một chỉ mục duy nhất, vì vậy nếu nó chứa các bản sao, bạn không thể chỉ định cột làm chỉ mục duy nhất, vì vậy bạn có thể cần tạo một cột mới hoàn toàn



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cách nhập và xuất tệp CSV bằng PHP và MySQL

  2. Kết nối với mysql trong vùng chứa docker từ máy chủ

  3. Tìm bản ghi trùng lặp trong MySQL

  4. MySQL MOD () Hàm - Thực hiện một hoạt động Modulo trong MySQL

  5. UTF-8:Tổng quát? Thùng rác? Unicode?