【发布时间】:2020-05-04 15:19:42
【问题描述】:
我的 MAC 上的这些行有问题,在 mariaDB 10.4.11 版本上。
DROP DATABASE IF EXISTS Employe_Programmeurs;
CREATE DATABASE Employe_Programmeurs;
USE Employe_Programmeurs;
CREATE TABLE Employe(
noEmp INT(5),
nom VARCHAR(10),
prenom VARCHAR(10),
CONSTRAINT pk_Employe_noEmp PRIMARY KEY (noEmp)
);
它告诉我:
当我在 Windows 上输入这些行时,它会毫无警告地工作,我可以在 SHOW CREATE TABLE 中看到它们。 在 Mac 上,它不会在 SHOW CREATE TABLE 上显示此主键的约束。
我更新、降级了,但仍然没有解决方案。
【问题讨论】:
-
PK 约束总是有一个名字
PRIMARY。没有排除、替代和别名。 CREATE TABLE:对于 PRIMARY KEY 索引,你可以指定索引的名称,但它会被忽略,并且索引的名称始终是 PRIMARY。 -
@Akina “有一个名字 PRIMARY”是什么意思?
-
@CloudData 所有索引和约束都有一个名称。它们中的大多数允许您在创建它们时指定名称,但主键始终命名为
PRIMARY。您尝试将其命名为pk_Employe_noEmp,但它只能有一个名称。 -
您是否在 Windows 和 Mac 上运行相同版本的 MariaDB?也许这个限制在版本之间已经改变了。
-
请通过链接阅读文章。这是文档用词,我只复制它们。
标签: mysql terminal mariadb mariadb-10.4