我在使用phpmyadmin创建表时遇到问题,这会给我以下错误:
#1089 - 前缀键不正确; 使用的关键部分不是字符串,使用的长度比关键部分长,或者存储引擎不支持唯一的前缀键
这是我的查询:
CREATE TABLE `b2b`.`users` ( `id` BIGINT NOT NULL AUTO_INCREMENT , `name` VARCHAR(30) NOT NULL , `surnames` VARCHAR(80) NOT NULL , `birthdate` DATE NOT NULL , `drivingdoc` VARCHAR(20) NOT NULL , `acdate` DATE NOT NULL , `countrydoc` VARCHAR(20) NOT NULL , `province` VARCHAR(20) NOT NULL , `locality` VARCHAR(35) NOT NULL , `address` VARCHAR(150) NOT NULL , `number` VARCHAR(20) NOT NULL , `flat` VARCHAR(20) NOT NULL , `door` VARCHAR(20) NOT NULL , `description` VARCHAR(2000) NOT NULL , PRIMARY KEY (`id`(7))) ENGINE = InnoDB;
在ubuntu minimal中使用MariaDB.
问题是:
PRIMARY KEY (`id`(7))
你不能使用数字的一部分作为关键,你必须使用整个事物.此外,指定数字类型的长度最多也是无用的,最坏的情况下是有害的.
改成:
PRIMARY KEY (`id`)