将表中的两列添加为另一个表中的外键

时间:2018-10-11 16:36:44

标签: mysql sql database

我有学生表格,如下所示

enter image description here

我想使用SQL查询创建一个新表证书,该表将自动增加 certid 作为主键,而rollno和标记应来自学生表作为外键(如果我错了,请纠正我),如下所示:

enter image description here

1 个答案:

答案 0 :(得分:1)

您必须创建这样的表证书,

create table certificates (
    certId int auto_increment primary key,
    rollNo int,
    marks int,
    FOREIGN KEY (rollNo) REFERENCES students(rollNo)
);

然后使用此命令可以将所有数据从学生表复制到证书表,

insert into certificates (rollNo,marks) select rollNo,marks from students;

让我知道您是否需要这样做,并且在执行过程中遇到任何问题。