MySQL 创建外键的语法?

mysqlmysqli database

创建外键的语法如下 −

alter table yourSecondTableName ADD CONSTRAINT yourConstraintname FOREIGN KEY(yourForeignKeyColumnName)
references yourFirstTableName (yourPrimaryKeyColumnName);

为了理解上述语法,让我们创建两个表。创建第一个表的查询如下 −

mysql> create table Department_Table
   -> (
   -> Department_Id int not null auto_increment primary key,
   -> Department_Name varchar(30)
   -> );
Query OK, 0 rows affected (0.83 sec)

创建第二张表的查询如下 −

mysql> create table Employee_Table
   -> (
   -> EmployeeID int not null auto_increment primary key,
   -> EmployeeName varchar(80),
   -> Job varchar(30),
   -> Department_Id int not null references department(departmentID)
   -> );
Query OK, 0 rows affected (1.12 sec)

上面的 Department_Id int,not null 引用部门(departmentID)不会创建外键。现在按照上述语法创建外键。

查询如下 −

mysql> alter table Employee_Table ADD CONSTRAINT fk_Department_Id FOREIGN KEY(Department_Id)
   -> references Department_Table(Department_Id);
Query OK, 0 rows affected (2.82 sec)
Records: 0 Duplicates: 0 Warnings:

相关文章