阿里云mysql建表自增主键问题

我要在阿里云上实现这样一个功能,从数据库中抽一部分字段,插入到新建表中,新建表要额外加一个主键id,要自增,一直报错,基本代码如下;


CREATE TABLE table_a (
  `id` int(11) NOT NULL UTO_INCREMENT,,
  `id_card_number` varchar(18) NOT NULL,
  PRIMARY KEY (`id`),
  KEY (`id_card_number`),
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8 AVG_ROW_LENGTH=153
;
INSERT INTO table_a
SELECT a.id_card_number
FROM table_b a
;

求救

CREATE TABLE table_a (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `id_card_number` varchar(18) NOT NULL,
  PRIMARY KEY (`id`),
  KEY (`id_card_number`),
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8 AVG_ROW_LENGTH=153
;
INSERT INTO table_a(id_card_number)
SELECT a.id_card_number
FROM table_b a
;

解决了

不从更改需求的角度解决问题,谢谢

问题中的sql是默认全列赋值的,但在value里只有一个值,所以报错
在mysql里,id是自增长的情况下,insert的列里面就不要出现id这一列;如果出现就一定要给个值;
id列存在的情况,也不能给null值,mysql在这种场景下会报错,而不是使用自增长给id列赋值;