第一正規化(1nf)定義了組織資料庫最基本的規則:
1nf的第乙個規則
你必須定義資料項。這表示檢查需要儲存的資料,將資料組織成列,定義每列資料的型別,最後將相關的列組成表。
例如,你可以將所有關於會議地點的列放入location表,將所有與會議成員相關的列放入memberdetails表,等等。
1nf的第二個規則
如果我們使用擁有多個訂單的客戶資訊填充該錶,將會獲得類似以下結果:create table customers(
(id int not null,
name varchar (
20) not null,
age int not null,
address char (
25),
orders varchar(
155)
);
id int not null,
name varchar (
20) not null,
age int not null,
address char (
25),
orders varchar(
155)
);
idname
ageaddress
orders
100sachin
36lower west side
cannon xl-200
100sachin
36lower west side
battery xl-200
100sachin
36lower west side
tripod large
但是根據1nf,我們需要確保不存在重複的資料。所以我們將該錶拆分成兩部分,然後通過乙個鍵進行關聯:
cusomters表:
該錶將會包含以下記錄:create table customers(
(id int not null,
name varchar (
20) not null,
age int not null,
address char (
25),
primary key (id)
);
id int not null,
name varchar (
20) not null,
age int not null,
address char (
25),
primary key (id)
);
idname
ageaddress
100sachin
36lower west side
orders表:
該錶將會包含以下記錄:create table orders(
(id int not null,
customer_id int not null,
orders varchar(
155),
primary key (id)
);
id int not null,
customer_id int not null,
orders varchar(
155),
primary key (id)
);
idcustomer_id
orders
10100
cannon xl-200
11100
battery xl-200
12100
tripod large
1nf第三個規則
第一正規化的最後乙個規則就是為每個表建立乙個主鍵,以上建立的表已經包含了主鍵。
資料庫三正規化1NF2NF3NF
設計關聯式資料庫時,遵從不同的規範要求,設計出合理的關係型資料庫,這些不同的規範要求被稱為不同的正規化,各種正規化呈遞次規範,越高的正規化資料庫冗餘越小 第一正規化 1nf 資料庫表中的所有字段值都是不可分解的原子值。即資料庫表的每一列都是不可分割的原子資料項,而不能是集合,陣列,記錄等非原子資料項...
資料庫正規化1NF 2NF 3NF詳細闡述
正規化 關聯式資料庫中的關係是要滿足一定要求的,滿足不同程度要求的不同正規化。滿足最低要求的叫第一正規化,簡稱1nf 在第一正規化中滿足進一步要求的為第二正規化,其餘以此類推。通俗來說是滿足資料庫關係表中的一套規則。正規化理論研究 codd提出1nf,2nf,3nf概念 2nf 例如 有關係模式s ...
資料庫隨筆 1NF,2NF,3NF詳解
1.第一正規化 1nf 每一列都是不可分割的原子資料項 2.第二正規化 2nf 在1nf的基礎上,非碼屬性必須完全依賴於碼 在1nf基礎上消除非主屬性對主碼的部分函式依賴 幾個概念 1.函式依賴 a b,如果通過a屬性 屬性組 的值,可以確定唯一b屬性的值。則稱b依賴於a 例如 學號 姓名。學號,課...