ALTERTABLE-在MySQL中添加AUTOINCRENT

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (16)

我在MySQL中创建了一个包含on列的表。itemID...。创建表之后,现在我想将该列更改为AUTOINCREMENT...。如何使用ALTER语句完成这一任务?

表定义:

ALLITEMS (itemid int(10) unsigned, itemname varchar(50))

我正在使用以下代码,但它正在引发错误:语法错误...

ALTER TABLE allitems
MODIFY itemid INT(10) UNSIGNED AUTOINCREMENT; 
提问于
用户回答回答于
CREATE TABLE ALLITEMS(
    itemid INT(10)UNSIGNED,
    itemname VARCHAR(50)
);

ALTER TABLE ALLITEMS CHANGE itemid itemid INT(10)AUTO_INCREMENT PRIMARY KEY;

DESC ALLITEMS;

INSERT INTO ALLITEMS(itemname)
VALUES
    ('Apple'),
    ('Orange'),
    ('Banana');

SELECT
    *
FROM
    ALLITEMS;

我被弄糊涂了CHANGEMODIFY关键词也是:

ALTER TABLE ALLITEMS CHANGE itemid itemid INT(10)AUTO_INCREMENT PRIMARY KEY;

ALTER TABLE ALLITEMS MODIFY itemid INT(5);

当我们在那里的时候,也要注意AUTO_INCREMENT也可以从预定义的数字开始:

ALTER TABLE tbl AUTO_INCREMENT = 100;
用户回答回答于

语法:

   ALTER TABLE `table1` CHANGE `itemId` `itemId` INT( 11 ) NOT NULL AUTO_INCREMENT 

但是该表需要一个已定义的键(Itemid上的ex主键)。

扫码关注云+社区