mysql一对多建表
时间: 2023-11-03 15:01:48 浏览: 113
一对多建表是在关系数据库中的一种常见的数据关联方式,用于建立两个表之间的一对多关系。在MySQL中,可以通过外键(Foreign Key)来实现一对多关系的建表。
例如,假设我们有两个表,一个是学生表(student),一个是课程表(course)。每个学生可以选修多门课程,而每门课程只属于一个学生。那么我们可以在课程表中添加一个外键,指向学生表的主键。
下面是一对多建表的示例SQL语句:
DROP TABLE IF EXISTS `student`;
CREATE TABLE `student` (
`id` INT NOT NULL AUTO_INCREMENT,
`student_name` VARCHAR(12) DEFAULT NULL UNIQUE,
PRIMARY KEY (`id`)
) ENGINE=INNODB DEFAULT CHARSET=utf8mb4;
DROP TABLE IF EXISTS `course`;
CREATE TABLE `course` (
`id` INT NOT NULL AUTO_INCREMENT,
`course_name` VARCHAR(30) DEFAULT NULL UNIQUE,
`student_id` INT NOT NULL,
PRIMARY KEY (`id`),
FOREIGN KEY (`student_id`) REFERENCES `student` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=INNODB DEFAULT CHARSET=utf8mb4;
在上述示例中,学生表(student)的主键是id,课程表(course)的主键是id,而外键是student_id,它关联到了学生表的id字段。这样就建立了学生和课程之间的一对多关系。
阅读全文