一正規化就是
屬性不可分割。
就是說學生身材資訊包含(身高 體重)。這不符合第1正規化,因為是可以拆分的,分為身高 體重
二正規化就是要
有主鍵,要求其他欄位都完全依賴依賴於主鍵。消除了部分依賴。
部分依賴多出現在主見個數大於1的情況,比如學生id,學生姓名,課程 id,課程分數。(不符合)
這兒的主鍵是(學生 id,課程 id)
(學生 id,課程 id) -> 課程分數,課程分數需要學生 id 和課程 id 共同決定,這兒是完全依賴的關係
但是(學生 id,課程 id) -> 學生姓名,這兒只需要學生 id 就能確定學生姓名,是部分依賴。所以不符合第2正規化
在2正規化的基礎上,不存在傳遞依賴的情況。
比如 學生 id,學生,指導老師,老師位址。
學生 id ->指導老師,指導老師->老師位址,雖然老師位址是完全依賴於學生 id 的,但是這裡面是傳遞依賴,不符合第3正規化。
一般用不到3正規化,不糾結
注意就是原子性 一致性 隔離性 永續性
事務必須是原子工作單元;對於其資料修改,要麼全都執行,要麼全都不執行。
事務在完成時,必須使所有的資料都保持一致狀態。
就是比如取了200塊錢,那麼對應的賬戶就要少200塊錢
由併發事務所作的修改必須與任何其它併發事務所作的修改隔離
。事務檢視資料時資料所處的狀態,要麼是另一併發事務修改它之前的狀態,要麼是另一事務修改它之後的狀態,事務不會檢視中間狀態的資料。這稱為隔離性,因為它能夠重新裝載起始資料,並且重播一系列事務,以使資料結束時的狀態與原始事務執行的狀態相同。
事務完成之後,它對於系統的影響是永久性的。該修改即使出現致命的系統故障也將一直保持。
關鍵字+主關鍵字+候選關鍵字
如果某個欄位或多個欄位的值可以唯一地標識一條記錄,則該字段就稱為關鍵字。
如果乙個關鍵字是用以區別每條記錄的唯一性標誌,並作為該錶與其他表實現關聯的,則稱為主關鍵字或主碼。
除主關鍵字以外的其他關鍵字稱候選關鍵字。
如有乙個表,欄位為:
id firstname lastname address phone idcard
那麼id或idcard或firstname+lastname都可以說是關鍵字。
其中id為主關鍵字,idcard和firstname+lastname為候選關鍵字
在乙個關係中,如乙個屬性是構成某乙個候選關鍵字的屬性集中的乙個屬性,則稱它為主屬性。如乙個屬性不是構成該關係任何乙個候選關鍵字的屬性集的成員,就稱它為非主屬性。例如表1.7中,
「學號+課程號」是關鍵字,那麼「學號」是主屬性,「課程號」是主屬性,分數是非主屬性。
資料庫知識點
1.truncate delete和drop delete delete是一行行刪除資料,不影響表結構,並且會記錄日誌,可以進行回滾。truncate 刪除表中所有資料,不記錄日誌,不可以回滾,truncate之後表空間和索引大小會回到初始值。所以truncate之前最好備份 drop 刪除整個表結...
資料庫知識點
資料庫的事務,是指作為單個邏輯工作單元執行的一系列操作。事務處理可以確保除非事務性單元內的所有操作都成功完成,否則不會永久更新面向資料的資源。通過將一組相關操作組合為乙個要麼全部成功要麼全部失敗的單元,可以簡化錯誤恢復並使應用程式更加可靠。乙個邏輯工作單元要成為事務,必須滿足所謂的acid 原子性 ...
資料庫知識點
oracle 安裝oracle時需要的所需的軟體包安裝命令 yum install binutils compat libcap1 gcc glibc ksh libaio libgcc libstdc libxi libxtst make sysstat 1 建使用者create user ora...