MySQL: #1075 - Incorrect table definition; autoincrement vs another key?

前端 未结 6 886
旧时难觅i
旧时难觅i 2020-11-29 03:13

Here is a table in MySQL 5.3.X+ db:

CREATE TABLE members` (
  `id` int(11)  UNSIGNED NOT NULL AUTO_INCREMENT,
  `memberid` VARCHAR( 30 ) NOT NULL ,
  `Time`          


        
6条回答
  •  孤街浪徒
    2020-11-29 03:51

    You can have an auto-Incrementing column that is not the PRIMARY KEY, as long as there is an index (key) on it:

    CREATE TABLE members ( 
      id int(11)  UNSIGNED NOT NULL AUTO_INCREMENT,
      memberid VARCHAR( 30 ) NOT NULL , 
      `time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP , 
      firstname VARCHAR( 50 ) NULL , 
      lastname VARCHAR( 50 ) NULL , 
      PRIMARY KEY (memberid) ,
      KEY (id)                          --- or:    UNIQUE KEY (id)
    ) ENGINE = MYISAM; 
    

提交回复
热议问题