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