§3
SQL語言集數(shù)據(jù)查詢、數(shù)據(jù)操縱、數(shù)據(jù)定義和數(shù)據(jù)控制功能于一體。
特點(diǎn)包括:①綜合統(tǒng)一、②高度非過程化、③面向集合的操作方式、④以同一種語法結(jié)構(gòu)提供兩種使用方式、⑤語言簡潔,易學(xué)易用。
定義和合理地使用視圖能帶來的好處為:
⑴、視圖能夠簡化用戶的操作
⑵、視圖使用戶能以多種角度看待同一數(shù)據(jù)
⑶、視圖對重構(gòu)數(shù)據(jù)庫提供了一定程度的邏輯獨(dú)立性
⑷、視圖能夠?qū)C(jī)密數(shù)據(jù)提供安全保護(hù)
視圖更新操作規(guī)則的限制:
如果視圖是從多個基本表使用聯(lián)接操作導(dǎo)出的,則不允許更新。
如果導(dǎo)出的視圖使用了分組和聚合操作,也不允許更新。
如果視圖是從單個基本表使用選擇和投影操作導(dǎo)出的,并且包括了基本表的主鍵或某個候選鍵,則可以執(zhí)行操作。
SQL中數(shù)據(jù)控制功能包括事務(wù)管理功能和數(shù)據(jù)保護(hù)功能,即數(shù)據(jù)庫的恢復(fù)、并發(fā)控制;數(shù)據(jù)庫的安全性和完整性。
§4
數(shù)據(jù)依賴是通過一個關(guān)系中屬性間值的相等與否體現(xiàn)出來的數(shù)據(jù)間的相互關(guān)系,是現(xiàn)實(shí)世界屬性間相互聯(lián)系的抽象,是數(shù)據(jù)內(nèi)在的性質(zhì),是語義的體現(xiàn)?,F(xiàn)在人們已經(jīng)提出了許多種類型的數(shù)據(jù)依賴,其中最重要的是函數(shù)依賴和多值依賴。
關(guān)系模式規(guī)范化時一般應(yīng)遵循以下原則:
(1)關(guān)系模式進(jìn)行無損連接分解。
(2)合理選擇規(guī)范化程度。
(3)正確性與可實(shí)現(xiàn)性原則。
關(guān)系模式規(guī)范化的基本步驟如圖所示。
①對1NF關(guān)系進(jìn)行投影,消除原關(guān)系中非主屬性對碼的函數(shù)依賴,將1NF關(guān)系轉(zhuǎn)換為若干個2NF關(guān)系。
②對2NF關(guān)系進(jìn)行投影,消除原關(guān)系中非主屬性對碼的傳遞函數(shù)依賴,從而產(chǎn)生一組3NF關(guān)系。
③對3NF關(guān)系進(jìn)行投影,消除原關(guān)系中主屬性對碼的部分函數(shù)依賴和傳遞函數(shù)依賴(也就是說,使決定屬性都成為投影的候選碼),得到一組BCNF關(guān)系。
SQL語言集數(shù)據(jù)查詢、數(shù)據(jù)操縱、數(shù)據(jù)定義和數(shù)據(jù)控制功能于一體。
特點(diǎn)包括:①綜合統(tǒng)一、②高度非過程化、③面向集合的操作方式、④以同一種語法結(jié)構(gòu)提供兩種使用方式、⑤語言簡潔,易學(xué)易用。
定義和合理地使用視圖能帶來的好處為:
⑴、視圖能夠簡化用戶的操作
⑵、視圖使用戶能以多種角度看待同一數(shù)據(jù)
⑶、視圖對重構(gòu)數(shù)據(jù)庫提供了一定程度的邏輯獨(dú)立性
⑷、視圖能夠?qū)C(jī)密數(shù)據(jù)提供安全保護(hù)
視圖更新操作規(guī)則的限制:
如果視圖是從多個基本表使用聯(lián)接操作導(dǎo)出的,則不允許更新。
如果導(dǎo)出的視圖使用了分組和聚合操作,也不允許更新。
如果視圖是從單個基本表使用選擇和投影操作導(dǎo)出的,并且包括了基本表的主鍵或某個候選鍵,則可以執(zhí)行操作。
SQL中數(shù)據(jù)控制功能包括事務(wù)管理功能和數(shù)據(jù)保護(hù)功能,即數(shù)據(jù)庫的恢復(fù)、并發(fā)控制;數(shù)據(jù)庫的安全性和完整性。
§4
數(shù)據(jù)依賴是通過一個關(guān)系中屬性間值的相等與否體現(xiàn)出來的數(shù)據(jù)間的相互關(guān)系,是現(xiàn)實(shí)世界屬性間相互聯(lián)系的抽象,是數(shù)據(jù)內(nèi)在的性質(zhì),是語義的體現(xiàn)?,F(xiàn)在人們已經(jīng)提出了許多種類型的數(shù)據(jù)依賴,其中最重要的是函數(shù)依賴和多值依賴。
關(guān)系模式規(guī)范化時一般應(yīng)遵循以下原則:
(1)關(guān)系模式進(jìn)行無損連接分解。
(2)合理選擇規(guī)范化程度。
(3)正確性與可實(shí)現(xiàn)性原則。
關(guān)系模式規(guī)范化的基本步驟如圖所示。
①對1NF關(guān)系進(jìn)行投影,消除原關(guān)系中非主屬性對碼的函數(shù)依賴,將1NF關(guān)系轉(zhuǎn)換為若干個2NF關(guān)系。
②對2NF關(guān)系進(jìn)行投影,消除原關(guān)系中非主屬性對碼的傳遞函數(shù)依賴,從而產(chǎn)生一組3NF關(guān)系。
③對3NF關(guān)系進(jìn)行投影,消除原關(guān)系中主屬性對碼的部分函數(shù)依賴和傳遞函數(shù)依賴(也就是說,使決定屬性都成為投影的候選碼),得到一組BCNF關(guān)系。