Vin*_*fer 3 mysql constraints primary-key
我认为这可能是MySQL的一个错误,但我不确定.任何人都可以告诉我如何为表创建主键然后重命名主要约束?如果可能,已在表创建期间使用所需名称创建主键.
我创建的所有主键最终都是名为"Primary".在添加PK之前已经尝试使用所需名称创建索引,并使用MySQL Workbench重命名PK.他们都没有工作.
任何人都知道什么是错的,为什么我不能重命名PK名字?
谢谢!
我不确定MySQL是否允许首先为主键命名.虽然似乎有一种语法:
CREATE TABLE test (
test_id INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,
CONSTRAINT my_test_pk PRIMARY KEY (test_id)
)
ENGINE=InnoDB;
Run Code Online (Sandbox Code Playgroud)
...它没有出现在information_schema.TABLE_CONSTRAINTS我能看到的任何其他地方,所以我的印象是它只是默默地丢弃了.
您看到的名称可能是GUI客户端为所有主键提供的硬编码名称.
编辑:这是手册中的引用:
a的名称
PRIMARY KEY始终为PRIMARY,因此不能用作任何其他类型索引的名称.