添加自动递增和唯一表id失败

62o28rlo  于 2021-06-17  发布在  Mysql
关注(0)|答案(1)|浏览(338)

我正在使用mysql workbench修改一个表,我以前从未遇到过这样的问题。我正在尝试更改我的表,使其具有自动递增的唯一表id。我从错误屏幕中得到以下信息:

Operation failed: There was an error while applying the SQL script to the database.
Executing:
ALTER TABLE `madewix5_lindsey_website_data`.`products` 
CHANGE COLUMN `product_id` `product_id` INT(3) NOT NULL AUTO_INCREMENT ,
ADD UNIQUE INDEX `product_id_UNIQUE` (`product_id` ASC) VISIBLE;
;

ERROR 1064: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '' at line 3
SQL Statement:
ALTER TABLE `madewix5_lindsey_website_data`.`products` 
CHANGE COLUMN `product_id` `product_id` INT(3) NOT NULL AUTO_INCREMENT ,
ADD UNIQUE INDEX `product_id_UNIQUE` (`product_id` ASC) VISIBLE

在我看来,它在句法上很好,所以我不知道它为什么说有问题。表中有一行数据。
编辑依据 mysql --version ,我的xampp服务器当前正在使用版本 Ver 15.1 Distrib 10.1.36-MariaDB, for Win32 (AMD64) 因此,建议在评论中重复的内容可能不适用。

5jdjgkvh

5jdjgkvh1#

根据评论中的帮助,已经给出了其他答案的建议,但要澄清的是,在xampp服务器的特定情况下,其maria db软件是最新的,此时可能不支持“可见”一词。删除工作“可见”允许脚本运行,并将唯一和自动递增属性添加到主键。

ALTER TABLE `madewix5_lindsey_website_data`.`products` 
CHANGE COLUMN `product_id` `product_id` INT(3) NOT NULL AUTO_INCREMENT ,
ADD UNIQUE INDEX `product_id_UNIQUE` (`product_id` ASC);

相关问题