MySQL command Line外部キー制約(FOREIGN KEY)

1737 ワード

外部キー制約を確立するには、列レベル制約構文と表レベル制約構文を使用します.個別のデータ列に対して外部キー制約を確立する場合は、列レベル制約構文を使用します.複数の列の組合せに対して外部キー制約を作成する必要がある場合、または外部キー制約の名前を指定する必要がある場合は、表レベル制約構文を使用する必要があります.
       カラム・レベルの制約構文を使用して外部キー制約を確立するには、referencesキーを直接使用します.referencesは、カラムが参照するプライマリ・テーブルと、プライマリ・テーブルを参照するカラムを指定します.次のSQL文を示します.
 
   

create table teacher_table

(

teacher_id int auto_increment,

teacher_name varchar(255),

primary key(teacher_id)

);

 

 

create table student_table

(

student_id int auto_increment primary key,

student_name varchar(255),

java_teacher int references teacher_table(teacher_id)

);

     MySQL                  ,                     ,MySQL                SQL        。  ,    MySQL        ,         。
 
   

create table teacher_table1

(

teacher_id int auto_increment,

teacher_name varchar(255),

primary key(teacher_id)

);

 

create table student_table1

(

student_id int auto_increment primary key,

student_name varchar(255),

java_teacher int,

foreign key(java_teacher) references teacher_table1(teacher_id)

或者使用下面的语句建立外键约束,并指定外键约束名student_teacher_fk

constraint student_teacher_fk foreign key(java_teacher) references teacher_table1(teacher_id)

);


, foreign key , references , 。 , , MySQL table_name_ibfk_n, table_name , n 1 。