mysql 8.0版本中添加表級約束外鍵失敗原因之一


 1 create table if not exists t_classes(
 2     classes_id int(3),
 3     classes_name varchar(40),
 4     constraint pk_classes_id primary key(classes_id)
 5 );
 6 
 7 -- 利用標記約束添加主鍵和外鍵
 8 create table if not exists t_student(
 9     student_id       int(10),
10     student_name     varchar(20),
11     sex           char(2),
12     birthday      date,
13     email         varchar(30),
14     classes_id    int(3),
15     constraint    fk_classes_id foreign key (classes_id) references t_classes (classes_id),
16     constraint    student_id_pk primary key(student_id) 
17 );

create table if not exists t_student(
    student_id       int(10)  primary key,
    student_name     varchar(20),
    sex           char(2),
    birthday      DATE,
    email         varchar(30),
    classes_id2    int(3), 
--         這里的添加順序是先添加主鍵后添加外鍵,會失敗,提示語法錯誤
    constraint    student_id_pk primary key(student_id)     
    constraint    fk_classes_id foreign key (classes_id2) references t_classes (classes_id)  
);

同樣是添加主鍵和外鍵,順序顛倒后會報語法錯誤

數據庫版本號:8.0.19


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM