範式是具有最小冗餘的表結構。
數據庫三範式具體如下:
1、 第一範式(1st NF -列都是不可再分)
第一範式的目標是確保每列的原子性:
如果每列都是不可再分的最小數據單元(也稱爲最小的原子單元),則滿足第一範式(1NF)
2、第二範式(2nd NF -每個表只描述一件事情)
首先滿足第一範式,並且表中非主鍵列不存在對主鍵的部分依賴。
第二範式要求每個表只描述一件事情。
3、第三範式(3rd NF - 不存在對非主鍵列的傳遞依賴)
第三範式定義是,滿足第二範式,並且表中的列不存在對非主鍵列的傳遞依賴。
除了主鍵訂單編號外,顧客姓名依賴於非主鍵顧客編號。
綜上:
回答一下什麼是第三範式?
首先,表中列都不可再分;
其次,表中非主鍵列不存在對主鍵的部分依賴;
第三,表中的列不存在對非主鍵列的傳遞依賴;
滿足以上三點的範式是第三範式。
數據庫是事務
事務(TRANSACTION)是作爲單個邏輯工作單元執行的一系列操作,
這些操作作爲一個整體一起向系統提交,要麼都執行、要麼都不執行 。
事務是一個不可分割的工作邏輯單元。
事務必須具備以下四個屬性,簡稱 ACID 屬性:
原子性( Atomicity )
1. 事務是一個完整的操作。事務的各步操作是不可分的(原子的);要麼都執行,要麼都不執行。
一致性( Consistency )
2. 當事務完成時,數據必須處於一致狀態。隔離性( Isolation )
3. 對數據進行修改的所有併發事務是彼此隔離的。這表明事務必須是獨立的,它不應以任何方式依賴於或影響其他事務。
永久性( Durability )
4. 事務完成後,它對數據庫的修改被永久保持,事務日誌能夠保持事務的永久性。