1. 程式人生 > 實用技巧 >MySQL學習4——外來鍵

MySQL學習4——外來鍵

##把所有資料都存放於一張表的弊端
  1.組織結構不清晰
  2.浪費硬碟空間
  3.擴充套件性極差

## 一對多(Foreign Key)

## 注意: MySQL中表與表的關係,只有“一對多”,沒有多對一;

# foreign key的用法
# 1、在建立表時,先建被關聯的表dep,才能建關聯表emp

# 先建立被關聯表 (相當於先建立被關聯的Excel表文件)
create table dep(
    id int primary key auto_increment,
    dep_name char(10),
    dep_comment char(60)
);

# 
再建立關聯表: 關聯表中設定 “外來鍵” create table emp( id int primary key auto_increment, name char(16), gender enum('male','female') not null default 'male', # 定義一個被關聯表的id欄位 dep_id int, # 再通過外來鍵繫結到另一張表中欄位 foreign key(dep_id) references dep(id) );

# 2、在插入記錄時,必須先插入被關聯的表dep,才能再插入關聯表emp

# 先插入被關聯表資料
insert into dep(dep_name,dep_comment) values
('教學部','輔導學生學習'),
('外交部','上海校區形象大使'),
('技術部','技術能力有限部門');

# 再插入關聯表資料
insert into emp(name,gender,dep_id)  values
('a','male',1),
('b','male',2);