SQL ALTER TABLE ADD PRIMARY KEY error1064

时间:2016-01-20 17:01:06

标签: mysql sql database wordpress

由于某些原因,我的sql脚本在添加主键语句时失败。我想知道是否有人能解释原因?

这是表格陈述。

CREATE TABLE IF NOT EXISTS `wp_bwg_album` (
  `id` bigint(20) NOT NULL,
  `name` varchar(255) NOT NULL,
  `slug` varchar(255) NOT NULL,
  `description` mediumtext NOT NULL,
  `preview_image` mediumtext NOT NULL,
  `random_preview_image` mediumtext NOT NULL,
  `order` bigint(20) NOT NULL,
  `author` bigint(20) NOT NULL,
  `published` tinyint(1) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

这是它失败的耻辱 -

ALTER TABLE `wp_bwg_album`
  ADD PRIMARY KEY (`id`);

该表的最后陈述也与该表有关。

ALTER TABLE `wp_bwg_album`
MODIFY `id` bigint(20) NOT NULL AUTO_INCREMENT;

我很困惑,问题是,SQL是来自我的实时服务器的转储。我只是在家里更新我的开发服务器。使用MySql工作台我得到标准的1064错误。

  

16:58:40 ADD PRIMARY KEY(id)错误代码:1064。您输入错误   你的SQL语法;查看与MySQL对应的手册   服务器版本,用于在“ADD PRIMARY KEY”附近使用正确的语法   (id)'在第1行0.000秒

任何帮助都将不胜感激。

2 个答案:

答案 0 :(得分:0)

试试这个:

ALTER TABLE `wp_bwg_album`
    ADD CONSTRAINT `pk_wp_bwg_album` PRIMARY KEY (`id`);

约束名称可以是任何人。

答案 1 :(得分:0)

尝试此查询:

alter table wp_bwg_album
add constraint pk_id primary key(id)