層次數據模型(xing)是數據庫系統(tong)最早(zao)使用的一種模型(xing),它用“樹”結構表示(shi)實(shi)體(ti)集(ji)之(zhi)(zhi)間(jian)(jian)的關(guan)聯(lian),其中(zhong)實(shi)體(ti)集(ji)(用矩形框表示(shi))為(wei)結點(dian),而樹中(zhong)各(ge)結點(dian)之(zhi)(zhi)間(jian)(jian)的連線表示(shi)它們(men)之(zhi)(zhi)間(jian)(jian)的關(guan)聯(lian)。
層(ceng)次(ci)結(jie)(jie)(jie)構(gou)是(shi)(shi)樹結(jie)(jie)(jie)構(gou),樹的(de)結(jie)(jie)(jie)點(dian)是(shi)(shi)記(ji)錄類型,非根結(jie)(jie)(jie)點(dian)有且只有一個父結(jie)(jie)(jie)點(dian)。上一層(ceng)記(ji)錄類型和下(xia)一層(ceng)記(ji)錄類型是(shi)(shi)1:N聯系。記(ji)錄之間(jian)的(de)聯系通過指針來實現(xian),查詢效率較(jiao)高。
用層次(ci)(ci)結(jie)構表示實(shi)體(ti)類型及實(shi)體(ti)間(jian)聯(lian)系的(de)數據模型稱為層次(ci)(ci)數據模型(hierarchical datamodel)記錄之(zhi)間(jian)的(de)聯(lian)系通過指針來實(shi)現,查詢效率較高。
層次模(mo)型的(de)(de)表(biao)示方(fang)法是:樹的(de)(de)結(jie)點(dian)表(biao)示實(shi)體集(ji)(記(ji)錄的(de)(de)型),結(jie)點(dian)之(zhi)間(jian)的(de)(de)連線表(biao)示相連兩實(shi)體集(ji)之(zhi)間(jian)的(de)(de)關(guan)(guan)系(xi),這種關(guan)(guan)系(xi)只能是“1一M”的(de)(de)。通常把表(biao)示1的(de)(de)實(shi)體集(ji)放在(zai)上方(fang),稱為父結(jie)點(dian),表(biao)示M的(de)(de)實(shi)體集(ji)放在(zai)下方(fang),稱為子結(jie)點(dian)。
層次模(mo)型的物(wu)理存儲(chu)有兩種實現方(fang)法:
順序法:按照層次順序把(ba)所有的(de)記(ji)錄鄰(lin)接存放,即通過物理空間(jian)的(de)位置相鄰(lin)來實現層次順序。
指針法:各個記錄存放(fang)時(shi)不是(shi)按層次順(shun)序,而是(shi)用(yong)指針按層次順(shun)序把它們鏈接起來。