如何在MySQL的各种表中将主键作为外来引用?
以下是语法-
alter table yourSecondTableName add constraint `yourConstraintName` foreign key(`yourSecondTableNamePrimaryKey`) references yourFirstTableName(yourFirstTablePrimaryKeyColumnName);
要了解上述语法,让我们首先创建一个表-
mysql> create table demo65 −> ( −> id int not null primary key, −> name varchar(20) −> );
以下是创建第二个表的查询-
mysql> create table demo66 −> ( −> user_id int not null primary key, −> address varchar(200) −> );
以下是将主键称为外键的查询-
mysql> alter table demo66 −> add constraint `id_fk` −> foreign key(`user_id`) −> references demo65(id); Records: 0 Duplicates: 0 Warnings: 0
让我们使用SHOWCREATETABLE命令检查表的整体描述。以下是查询-
mysql> show create table demo66;
这将产生以下输出-
+--------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | Table | Create Table +--------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | demo66 | CREATE TABLE `demo66` ( `user_id` int NOT NULL, `address` varchar(200) DEFAULT NULL, PRIMARY KEY (`user_id`), CONSTRAINT `id_fk` FOREIGN KEY (`user_id`) REFERENCES `demo65` (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci | +--------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ 1 row in set (0.00 sec)