單張表的缺點:
表的結構不清晰
造成數據冗余
表的可擴展性差
一.外鍵
- 一個表的的主碼的在另一張表中出現充當非主碼字段(Foreign Key)
- 表與表之間用外碼進行連接
- 外鍵雖然能夠幫你強制建立表關系 但是也會給表之間增加數據相關的約束,通過cascade可以進行級聯更新
- 外鍵約束
- 1.在創建表的時候 必須先創建被關聯表
- 2.插入數據的時候 必須先插入被關聯表的數據
二.實體與實體之間的關系
- 一對一關系
- 外鍵字段放在使用頻率高的表上
- 一對多關系
- 外鍵字段放在多的一方
- 多對多關系
- 建在關系表中
三.修改表的完整語句

1.修改表的完整語句 1. 修改表名 ALTER TABLE 表名 RENAME 新表名; 2. 增加字段 ALTER TABLE 表名 ADD 字段名 數據類型 [完整性約束條件…], ADD 字段名 數據類型 [完整性約束條件…]; ALTER TABLE 表名 ADD 字段名 數據類型 [完整性約束條件…] FIRST; # 直接移到最前面 ALTER TABLE 表名 ADD 字段名 數據類型 [完整性約束條件…] AFTER 字段名; # 尋找插哪個字段的后面 3. 刪除字段 ALTER TABLE 表名 DROP 字段名; 4. 修改字段 # modify只能改字段數據類型完整約束,不能改字段名,但是change可以! ALTER TABLE 表名 MODIFY 字段名 數據類型 [完整性約束條件…]; ALTER TABLE 表名 CHANGE 舊字段名 新字段名 新數據類型 [完整性約束條件…];
四.復制表
復制表結構+記錄 (key不會復制: 主鍵、外鍵和索引)
create table 表一 select * from 表eer;
ps:查詢語句執行的結果是一張虛表