就像MySQL忽略CONSTRAINT pk_PersonID部分一样.您可以通过创建表然后将其转储或发出SHOW CREATE TABLE Persons进行检查.
我猜想它支持此语法仅是为了与其他SQL Server兼容(但是对于主键和其他本地键则忽略它),并且不存储其信息(约束名称).
但是,对于与外键一起使用,在MySQL中也使用CONSTRAINT关键字.
mysql> CREATE TABLE test.Persons (
-> P_Id int NOT NULL,
-> LastName varchar(255) NOT NULL,
-> FirstName varchar(255),
-> Address varchar(255),
-> City varchar(255),
-> CONSTRAINT pk_PersonID PRIMARY KEY (P_Id)
-> );
Query OK, 0 rows affected (0.50 sec)
server$mysqldump -p test Persons
Enter password:
--
-- Table structure for table `Persons`
--
DROP TABLE IF EXISTS `Persons`;
CREATE TABLE `Persons` (
`P_Id` int(11) NOT NULL,
`LastName` varchar(255) NOT NULL,
`FirstName` varchar(255) DEFAULT NULL,
`Ad