??????數(shù)據(jù)規(guī)范化???
??????第一范式
??????1.每一行的每一列必須只有一個(gè)值.
??????2.每一行的列相同.
??????3.所有行必須唯一.
??????第二范式
??????1.遵守所有第一范式的規(guī)則.
??????2.所有非主鍵列必須依賴主鍵列.
??????第三范式
??????1.遵守所有第二范式的規(guī)則.
??????2.所有非主鍵列必須依賴主鍵列,并且必須相互獨(dú)立.
??????關(guān)系型數(shù)據(jù)庫(kù)的關(guān)系
??????一對(duì)一關(guān)系.
??????一對(duì)多關(guān)系.
??????多對(duì)多關(guān)系.
??????其中一對(duì)一關(guān)系主要因?yàn)?.敏感信息.2.列太多.3.提高性能.
??????多對(duì)多關(guān)系是不存在的,一般中間都會(huì)加個(gè)連接表.
??????創(chuàng)建數(shù)據(jù)模型
??????邏輯型模型
??????物理型模型
??????邏輯型模型是抽象的考慮數(shù)據(jù)存儲(chǔ),并且嚴(yán)格遵守范式規(guī)則和關(guān)系模型.物理型模型是提供的數(shù)據(jù)庫(kù)如何在RDBMS實(shí)現(xiàn)的表現(xiàn).所以,邏輯型模型與數(shù)據(jù)庫(kù)如何實(shí)現(xiàn)無關(guān),而物理型模型就是一個(gè)特定的實(shí)現(xiàn).
??????數(shù)據(jù)型模型是創(chuàng)建表,定義列,以及設(shè)置表間關(guān)系的藍(lán)圖.它必須實(shí)現(xiàn):
??????1.組成數(shù)據(jù)庫(kù)的表
??????2.組成每個(gè)表的列.
??????3.列的數(shù)據(jù)類型.
??????4.標(biāo)識(shí)每一行的主鍵.
??????5.標(biāo)明表間的關(guān)系.
??????創(chuàng)建數(shù)據(jù)模型的4個(gè)步驟:
??????1.識(shí)別實(shí)體??
??????2.規(guī)范化數(shù)據(jù)
??????3.識(shí)別關(guān)系
??????4.改進(jìn)數(shù)據(jù)模型
??????數(shù)據(jù)庫(kù)就是一系列有一定關(guān)系的數(shù)據(jù)的集合.(某種方式相關(guān)的數(shù)據(jù)的集合).在數(shù)據(jù)庫(kù)中,數(shù)據(jù)的描述必須? 是以一定的格式被組織或者分類.這種格式叫做元數(shù)據(jù)(metadata)
??????常見的數(shù)據(jù)模型有3種.
??????層次模型
????? 層次模型就好象是一棵倒掛的樹.數(shù)據(jù)是以父類子類的形式存在.每個(gè)父類可以有多個(gè)子類,但是每個(gè)子類只能有1個(gè)父類.其形狀跟WINDOWS資源管理器一樣.其缺點(diǎn)就是
過于呆板,導(dǎo)航非常的麻煩.
????? 網(wǎng)狀模型
??????網(wǎng)絡(luò)型相比層次模型提供了更多的可伸縮性.他允許有多個(gè)父子關(guān)系.他的缺點(diǎn)是如果數(shù)據(jù)庫(kù)變動(dòng),或者程序變動(dòng),那就會(huì)引起更多的變動(dòng).
??????關(guān)系模型
????? 這個(gè)較上兩個(gè),可伸縮性就更強(qiáng).他對(duì)于應(yīng)用程序是獨(dú)立的.就是說如果應(yīng)用程序有改動(dòng),但是數(shù)據(jù)庫(kù)卻可以不變.
??????數(shù)據(jù)庫(kù)管理系統(tǒng)(DBNS)他的功能基本上是:
??????管理存儲(chǔ)
??????維護(hù)安全
??????維護(hù)元數(shù)據(jù)
??????管理事務(wù)
??????支持連接性
??????優(yōu)化性能
??????提供備份和恢復(fù)機(jī)智
??????處理數(shù)據(jù)反饋和更改的請(qǐng)求
????? 一個(gè)關(guān)系型數(shù)據(jù)庫(kù)(RDBNS)分成兩個(gè)主要組成部分.
????? 數(shù)據(jù)庫(kù)引擎
??????數(shù)據(jù)
??????關(guān)系型數(shù)據(jù)庫(kù)分兩種類型.
??????本地?cái)?shù)據(jù)管理系統(tǒng)
??????數(shù)據(jù)庫(kù)服務(wù)器管理系統(tǒng)
??????SQL是機(jī)構(gòu)化查詢語(yǔ)言的英文縮寫.它是一門非過程的語(yǔ)言.它是實(shí)現(xiàn)必須要有一個(gè)宿主語(yǔ)言.它本身是一種沒有多少基本編程能力的次語(yǔ)言.
??????SQL語(yǔ)句分為三種.
??????DDL.數(shù)據(jù)定義語(yǔ)句.
??????DML.數(shù)據(jù)操作語(yǔ)言.
??????DCL數(shù)據(jù)控制語(yǔ)言.
??????DDL執(zhí)行的任務(wù)是:創(chuàng)建刪除數(shù)據(jù)庫(kù);創(chuàng)建,修改,重命名,刪除表;創(chuàng)建刪除索引.
??????DML執(zhí)行的任務(wù)是:SQL查詢;將數(shù)據(jù)插入一個(gè)表中;更改表中已有數(shù)據(jù);刪除表中數(shù)據(jù).
??????DCL執(zhí)行的任務(wù)是:給用戶授予訪問權(quán)限;取消用戶訪問權(quán)限.
??????Oracle的體系結(jié)構(gòu)
????? Oracle主要由數(shù)據(jù)庫(kù)引擎和數(shù)據(jù)庫(kù)結(jié)構(gòu)兩部分組成.
??????數(shù)據(jù)庫(kù)引擎又分為數(shù)據(jù)全局區(qū)(SGA)和后臺(tái)處理程序兩部分.