1.外模式數(shù)據(jù)定義語(yǔ)言
外模式數(shù)據(jù)定義語(yǔ)言(subschema data definition languag" />

国产成人精品无码青草_亚洲国产美女精品久久久久∴_欧美人与鲁交大毛片免费_国产果冻豆传媒麻婆精东

18143453325 在線咨詢 在線咨詢
18143453325 在線咨詢
所在位置: 首頁(yè) > 營(yíng)銷資訊 > 信息時(shí)代 > 層次數(shù)據(jù)庫(kù)語(yǔ)言(數(shù)據(jù)庫(kù))

層次數(shù)據(jù)庫(kù)語(yǔ)言(數(shù)據(jù)庫(kù))

時(shí)間:2022-12-13 16:30:01 | 來(lái)源:信息時(shí)代

時(shí)間:2022-12-13 16:30:01 來(lái)源:信息時(shí)代

    層次數(shù)據(jù)庫(kù)語(yǔ)言 : 用于定義層次數(shù)據(jù)庫(kù)的邏輯數(shù)據(jù)結(jié)構(gòu)和物理存儲(chǔ)結(jié)構(gòu)、對(duì)層次數(shù)據(jù)庫(kù)進(jìn)行操縱的語(yǔ)言。包括:
1.外模式數(shù)據(jù)定義語(yǔ)言
外模式數(shù)據(jù)定義語(yǔ)言(subschema data definition language)的功能是描述層次數(shù)據(jù)庫(kù)的外模式。數(shù)據(jù)庫(kù)的外模式描述各個(gè)用戶所需數(shù)據(jù)的邏輯數(shù)據(jù)結(jié)構(gòu)。外模式是應(yīng)用程序的數(shù)據(jù)視圖,一個(gè)數(shù)據(jù)庫(kù)可以有多個(gè)外模式,它們之間可以重疊。在IMS中,一個(gè)外模式是一組邏輯數(shù)據(jù)庫(kù)記錄型的集合,即程序說(shuō)明塊(PSB)。IMS提供了五種PSB定義語(yǔ)句:
(1)程序通信塊(PCB)語(yǔ)句: 負(fù)責(zé)定義應(yīng)用程序和數(shù)據(jù)庫(kù)的接口,包括PCB的類型(TYPE)和對(duì)應(yīng)的物理數(shù)據(jù)庫(kù)模式(DBDNAME)等。
(2) SENSEG語(yǔ)句:負(fù)責(zé)定義外模式的片段型,包括片段型名(NAME)、父片段型名(PARENT)和該片段所允許的處理方式(PROCOPT)等。
(3) SENFLK語(yǔ)句: 負(fù)責(zé)定義外模式片段型的域,當(dāng)外模式片段型所包含的域的順序和個(gè)數(shù)與相應(yīng)物理數(shù)據(jù)庫(kù)記錄型的片段不一致時(shí),需要使用此語(yǔ)句來(lái)定義。
(4) PSBGEN語(yǔ)句: 負(fù)責(zé)定義相應(yīng)應(yīng)用程序的宿主語(yǔ)言類型(LANGUAGE)和PSB名(PSB-NAME)等。
(5) END語(yǔ)句: 標(biāo)明PSB的定義結(jié)束。
2.模式數(shù)據(jù)定義語(yǔ)言
模式數(shù)據(jù)定義語(yǔ)言(schema data definition language)是數(shù)據(jù)庫(kù)管理員用來(lái)定義數(shù)據(jù)庫(kù)全局邏輯數(shù)據(jù)結(jié)構(gòu)的描述語(yǔ)言。用模式數(shù)據(jù)定義語(yǔ)言寫出的定義一個(gè)數(shù)據(jù)庫(kù)的全部語(yǔ)句稱為一個(gè)模式。IMS的數(shù)據(jù)庫(kù)模式是一組物理數(shù)據(jù)庫(kù)記錄型的集合。物理數(shù)據(jù)庫(kù)記錄型是由若干相關(guān)聯(lián)的片段型組成的 一棵樹結(jié)構(gòu)。
如圖1所示,表示一個(gè)教學(xué)數(shù)據(jù)庫(kù)的物理數(shù)據(jù)庫(kù)記錄型。


圖1 教學(xué)數(shù)據(jù)庫(kù)的物理數(shù)據(jù)庫(kù)記錄型


在IMS中,每個(gè)物理數(shù)據(jù)庫(kù)記錄型由一個(gè)DBD定義。DBD定義物理數(shù)據(jù)庫(kù)記錄型的邏輯結(jié)構(gòu)及其存儲(chǔ)結(jié)構(gòu)的映像。IMS提供如下七種的語(yǔ)句來(lái)定義DBD:
(1) DBD語(yǔ)句:DBD是第一條語(yǔ)句,用來(lái)定義物理數(shù)據(jù)庫(kù)名字(NAME)和物理數(shù)據(jù)庫(kù)的存取方法(ACCESS)等。
(2) DATASET語(yǔ)句:定義數(shù)據(jù)庫(kù)中數(shù)據(jù)文件名(NAME)、存儲(chǔ)設(shè)備(DEVICE)和物理塊大小(BLOCK)。
(3) SEGM語(yǔ)句: 定義數(shù)據(jù)庫(kù)的一個(gè)片段型,包括片段名(NAME)、片段長(zhǎng)度(BYTES)、片段值的最大數(shù)目(FREQ)、存儲(chǔ)組織中的指針類型(PTR)以及父片段型(PARENT)。
(4) FIELD語(yǔ)句: 定義片段型中的域,包括域名(NAME)、域長(zhǎng)(BYTES)、在片段內(nèi)的起始位置(START)和數(shù)據(jù)類型(TYPES)。順序域用SEQ標(biāo)記,其唯一性標(biāo)記為U和M(U表示不允許重復(fù)值出現(xiàn),M表示允許出現(xiàn)重復(fù)值)。
(5) DBDGEN語(yǔ)句: 表示DBD生成結(jié)束。
(6) FINISH語(yǔ)句: 檢驗(yàn)DBD生成成功與否。
(7) END語(yǔ)句: 表示DBD定義結(jié)束。
例如,下面的程序定義了一個(gè)教學(xué)數(shù)據(jù)庫(kù)的模式:
DBD NAME=TS,ACCESS=HDAM
/*定義物理數(shù)據(jù)庫(kù)總體邏輯結(jié)構(gòu)的名稱,存取方式*/
DATASET NAME=TSF,
DEVICE=3330,BLOCK =1024
/*定義文件名稱,存儲(chǔ)設(shè)備,物理塊大小*/
SEGM NAME=DEPT,BYTES=35,FREQ=30
/*片段型的名稱,長(zhǎng)度,片段值的最大數(shù)目*/
FIELD NAME=(D#,SEQ,U),BYTES=3,
START=1,TYPE=CHAR
/*域名,長(zhǎng)度,起始位置,數(shù)據(jù)類型*/
FIELD NAME=TITLE,BYTES=22,
START=4,TYPE=CHAR
FIELD NAME=OTHER,BYTES=10,
START=26,TYPE=CHAR
SEGM NAME=COURSE,BYTES=30,
FREQ=90,PARENT=DEPT
FIELD NAME=(C#,SEQ,U),BYTES=3,
START=1,TYPE=CHAR
FIELD NAME=TITLE BYES=22,
START=4,TYPE=CHAR
FIELD NAME=FORMAT,BYTES=5,
START=26,TYPE=INTEGER
SEGM NAME=TEACHER,BYTES=40,
FREQ=100,PARENT=DEPT
FIELD NAME=(NAME,SEQ,U),BYTES=8,
START=1,TYPE=CHAR
FIELD NAME=AGE,BYTES=2,START=9,
TYPE=INTEGER
FIELD NAME=UNIVERSITY,BYTES=30,
START=11,TYPE=CHAR DBDGEN
FINISH END
3.數(shù)據(jù)操縱語(yǔ)言
數(shù)據(jù)操縱語(yǔ)言(data manipulation language,DML)是層次數(shù)據(jù)庫(kù)系統(tǒng)用來(lái)對(duì)數(shù)據(jù)庫(kù)中的數(shù)據(jù)進(jìn)行存儲(chǔ)、檢索和修改的語(yǔ)言。層次數(shù)據(jù)庫(kù)數(shù)據(jù)操縱語(yǔ)言是過(guò)程式語(yǔ)言,要求用戶熟悉層次數(shù)據(jù)庫(kù)的結(jié)構(gòu),用戶需要用宿主語(yǔ)言編寫應(yīng)用程序來(lái)調(diào)用數(shù)據(jù)操縱語(yǔ)句,實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)的訪問(wèn)。IMS的數(shù)據(jù)操縱語(yǔ)言是DL/1,DL/1是面向某種高級(jí)語(yǔ)言(稱為宿主語(yǔ)言)的數(shù)據(jù)操縱語(yǔ)言。用戶使用宿主語(yǔ)言編寫的應(yīng)用程序,當(dāng)需要存儲(chǔ)數(shù)據(jù)庫(kù)時(shí),嵌入DL/1的相應(yīng)語(yǔ)句。例如,用DL/1語(yǔ)句將數(shù)據(jù)庫(kù)數(shù)據(jù)取入內(nèi)存,然后由宿主語(yǔ)言語(yǔ)句對(duì)其進(jìn)行各種運(yùn)算和處理。又如,用宿主語(yǔ)言語(yǔ)句接受用戶輸入的數(shù)據(jù),對(duì)其進(jìn)行處理,再由嵌套的DL/1語(yǔ)句寫入數(shù)據(jù)庫(kù)。IMS的宿主語(yǔ)言包括COLBOL、PL/1、匯編語(yǔ)言、C語(yǔ)言等。宿主語(yǔ)言通過(guò)高級(jí)編程接口和CALL調(diào)用兩種方式使用DL/1語(yǔ)句,宿主語(yǔ)言與DL/1在指定的程序I/O區(qū)進(jìn)行信息交換。
DL/1語(yǔ)句存取數(shù)據(jù)庫(kù)的基本單位是片段,即一條DL/1語(yǔ)句只能處理一個(gè)片段。DL/1語(yǔ)句可以分為檢索、更新和控制三大類,如表1所示。

表1 DL/1語(yǔ)句


DL/1操作語(yǔ)句功能
檢索GU GN
GNP GHU
GHN GHNP
檢索某一片段
順序檢索下一個(gè)片段
在當(dāng)前父片段內(nèi)順序檢索下一片段
同GU,為修改、刪除做準(zhǔn)備
同GN,為修改、刪除做準(zhǔn)備
同GNP,為修改、刪除做準(zhǔn)備
更新ISRT REPL
DELT
插入片段
修改片段內(nèi)容
刪除某個(gè)片段及其所有后裔片段
控制LOAD CHKP
SCHD TERM
初始加載一個(gè)片段
建立檢查點(diǎn)
調(diào)度PSB
釋放PSB


例如,“檢索計(jì)算機(jī)系開設(shè)的數(shù)據(jù)庫(kù)課程的片段”相應(yīng)的GU語(yǔ)句為:
GU DEPT(D#="計(jì)算機(jī)系")
COURSE(TITLE="數(shù)據(jù)庫(kù)")
該GU操作表示按層次順序讀取第一個(gè)滿足條件的片段。

74
73
25
news

版權(quán)所有? 億企邦 1997-2022 保留一切法律許可權(quán)利。

為了最佳展示效果,本站不支持IE9及以下版本的瀏覽器,建議您使用谷歌Chrome瀏覽器。 點(diǎn)擊下載Chrome瀏覽器
關(guān)閉