




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、醫(yī)藥數(shù)據(jù)庫系統(tǒng)原理與應(yīng)用緒論1.1.1數(shù)據(jù)庫管理系統(tǒng)的概念:是一種操縱和管理數(shù)據(jù)的大型軟件,用于建立、使用后人維護(hù)數(shù)據(jù)庫,簡稱DBMS。功能:數(shù)據(jù)定義、數(shù)據(jù)組織、數(shù)據(jù)存儲、數(shù)據(jù)操縱和運(yùn)行維護(hù)1.2數(shù)據(jù)模型的分類:概念模型、邏輯模型和物理模型 數(shù)據(jù)模型的組成要素數(shù)據(jù)模型精確的描述了系統(tǒng)的靜態(tài)特征、動態(tài)特征和完整性約束條件,由數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)操 作和完整性約束三部分組成。E-R模型:兩個實(shí)體之間的聯(lián)系可分為三種一對一、一對多、多對多。(分別會畫)科主任科室科室1醫(yī)生n病人1:1聯(lián)系1: n聯(lián)系m: n聯(lián)系1.3三級模式結(jié)構(gòu)數(shù)據(jù)庫系統(tǒng)的三級模式結(jié)構(gòu)包括 外模式、內(nèi)模式、模式二級映像(1)外模式|模式映
2、像:模式描述的是數(shù)據(jù)庫的全局邏輯結(jié)構(gòu),外模式描述的是局部數(shù)據(jù) 的邏輯結(jié)構(gòu)。一個模式對應(yīng)多個外模式,每個外模式都有一個外模式|模式映像。外模式|模式映像一般放在外模式中描述。(2)模式|內(nèi)模式映像:數(shù)據(jù)庫中只有一個模式,也只有一個內(nèi)模式,因此模式|內(nèi)模式映 像是唯一的,它表達(dá)了數(shù)據(jù)全局邏輯結(jié)構(gòu)與存儲結(jié)構(gòu)之間的對應(yīng)關(guān)系。,如邏輯記錄和字段 在內(nèi)部是如何儲存的。模式|內(nèi)模式映像一般是放在模式在模式中描述的。數(shù)據(jù)的獨(dú)立性(1)數(shù)據(jù)的地邏輯獨(dú)立性(2)數(shù)據(jù)的物理獨(dú)立性二、關(guān)系模型與關(guān)系代數(shù)2.3實(shí)體完整性的規(guī)則(1)實(shí)體完整性的規(guī)則針對基本關(guān)系。一個基本關(guān)系表通常對應(yīng)一個實(shí)體集,例如醫(yī)生關(guān)系對應(yīng)醫(yī)生集合
3、;(2)現(xiàn)實(shí)世界中的實(shí)體是可以區(qū)分的,它們具有一種唯一性標(biāo)識。例如:醫(yī)生的 ID,病 人的ID等。(3)在關(guān)系模型中,主關(guān)鍵字作為唯一的標(biāo)識,且不能為空。參照完整性現(xiàn)實(shí)世界中的實(shí)體與實(shí)體之間往往存在某種關(guān)系,當(dāng)用關(guān)系來表示實(shí)體與實(shí)體之間的聯(lián)系 時,關(guān)系之間的相互引用是必然的。用戶自定義的完整性任何關(guān)系數(shù)據(jù)庫系統(tǒng)都應(yīng)該支持實(shí)體完整性和參照完整性。除此之外,關(guān)系數(shù)據(jù)庫系統(tǒng)根據(jù)現(xiàn)實(shí)世界中的環(huán)境不同,往往還需要另外的約束條件。用戶自定義的完整性就是針對某一具體要求來定義的約束條件,它反應(yīng)某一具體應(yīng)用所涉及的數(shù)據(jù)必須滿足的 語義要求。運(yùn)算符含義運(yùn)算符含義集合運(yùn)算符U并比較運(yùn)算符>大于一交>大
4、于等于n差<小于X笛卡爾積小于等于專門的關(guān)系運(yùn)算符6選擇n投影連接十除一等于O不等于邏輯運(yùn)算符非A與V或傳統(tǒng)的集合運(yùn)算是二目運(yùn)算,包括 交、并、差、廣義笛卡爾積 四種運(yùn)算、SQL語言SQL的特點(diǎn)1. 綜合統(tǒng)一2. 高度非過程化3使用方式靈活4.語言簡潔,易學(xué)易用完整性約束條件1. NULL|N0T NULL約束:表面相應(yīng)列是否允許空值2. PRIMARY KEY約束(主鍵約束):用于定義基本表的主鍵,其唯一標(biāo)示作用。主鍵可以是某一列,也可以是多列的組合。一個基本表只能有一個主鍵,對于指定的PRIMARY KEY地一個列或多個列的組合,其中任何一個列都必須定義為NOT NULLo3. CH
5、ECK約束:用來檢查字段值所允許的范圍4. FOREING KEY (外鍵約束):用于定義基本標(biāo)的外鍵,建立兩張表之間的聯(lián)系 用SQL語言定義如下醫(yī)生表(Doctor)CREATE TABLE Doctor(dID CHAR(6)PRIMARY KEY, dName CHAR(10),Titie CHAR(10),Department CHAR(10),Assistant CHAR(6);病人表( Patient )CREATE TABLE Patient(pID CHAR(6)PRIMARY KEY, pName CHAR(10),Sex CHAR(2),Job CHAR(30),Tel C
6、HAR(6),Birth Datetime,CHECK (Sex in(' 男',' 女');就診總費(fèi)用表( CureFee)CREATE TABLE CureFee(pID CHAR(6)NOT NULL,dID CHAR(6)NOT NULL,Fee Int check(Fee>=0),PRIMARY KEY(pID,dID),FOREIGN KEY(pID)REFERENCES Patient(pID),FOREIGN KEY(dID)REFERENCES Doctor(dID);例3.5在醫(yī)生表Doctor中增加“性別”“簡介”列,其數(shù)據(jù)類型均為字
7、符型ALTER TABLE DoctorADD sex CHAR(2)CHECK(sex in('男','女'),i ntroduction CHAR(30);例 3.12 為 Patient 表的 Sex 列建立默認(rèn)約束,默認(rèn)為“男”ALTER TABLE PatientADD CONSTRAINT DF_Patie nt_Sex DEFAULT '男'FOR Sex;1索引的分類(重點(diǎn)在英文) 在創(chuàng)建索引前,必須確定要使用的列和要創(chuàng)建的索引類型。(1)唯一索引( U N I QU E ):每一個索引值只對應(yīng)唯一的數(shù)據(jù)記錄。系統(tǒng)在創(chuàng)建該素引時
8、34 單表檢查是否有重復(fù)的鍵值,并在每次便用 INSERT或UPDATE語句添加數(shù)據(jù)時進(jìn)行檢查。如要 使用此選項,則則應(yīng)確定索引所包含的列均不允許 NUIL 值,否則在使用時會經(jīng)常出錯。(2)聚集索引(CLUSTERED):也稱聚簇索引。創(chuàng)建聚簇索引時,需要對已有表數(shù)據(jù)重新 進(jìn)行排序(若表中已有數(shù)據(jù)),即刪除原始的表數(shù)據(jù)后再將排序結(jié)果按物理序插回,故聚 索引建立完畢后,建立聚簇索引的列中的數(shù)據(jù)已經(jīng)全部按序排列,排列的結(jié)果存儲在表中。 個表中只能包含一個聚簇索引,但該索引可以包含多個列。(3)非聚集索引(NONCLUSTERED :也稱非聚簇索引。索引與數(shù)據(jù)存放在不同的物理區(qū) 城,建立非聚集索引
9、時數(shù)據(jù)本身不進(jìn)行排序,即排列的結(jié)果不存儲在表中。一個表中可以建 立多個非聚簇索引。(4)復(fù)合索引:將兩個或多個字段組合起來建立的索引,單獨(dú)的字段允許有重復(fù)的值 需要注意的是,建立索引的目的是加快對表中記錄的查找或排序。同時,為表設(shè)置索引是 要付出代價價的:一是增加了數(shù)據(jù)庫的存儲空間,二是在插入和修改數(shù)據(jù)時要花費(fèi)較多的時 間(因為索引也要隨之變動)。用戶可以在最常查詢的列上建立聚集索引,以提高查詢效率。但對于經(jīng)常更新的列不宜建立聚集索引。例 3.28 查詢姓劉的醫(yī)生的基本信息SELECT*FROM DoctorWHERE dNAME LIKE'劉 %'例 3.33 查詢沒有提供電
10、話的病人的姓名、性別、職業(yè)。SELECT pNAME,Sex,JobFROM PatientWHERE Tel IS NULL;例 3.35 查詢內(nèi)科的主任醫(yī)師SELECT dID,dNAME,Title,Department,AssistantFROM DoctorWHERE Department='內(nèi)科'AND Title='主任醫(yī)師';例 3.37 查詢病人的基本信息,查詢結(jié)果按照病人的性別升序排列,相同性別的按出生日期順 序排列。SELECT pID,pName,Sex,Job,Tel,BirthFROM PatientORDER BY Sex,Birt
11、h DESC;連接查詢連接查詢是關(guān)系數(shù)據(jù)庫中最主要、最重要的查詢。包括等值鏈接、非等值連接、自然連接查 詢、自身連接查詢和復(fù)合條件連接查詢等。連接條件中的各連接字段類型必須是可比的,但列名不一定是相同的。修改一條記錄例 3.64 將 Doctor 表中所有“呼吸科”醫(yī)生的助手 Assistant 改為“ d4”。UPDATE Doctor SET Assistant='d4'WHERE Department =' 呼吸科';例3.66將Patient表中所有職業(yè)Job為“學(xué)生”且出生日期Birth最早(或最晚)的桑耳的電話Tel 改為“ 000”。UPDATE
12、TOP(3)PatientSET Tel='000'WHERE Job=' 學(xué)生' ORDER BY Birth ASC(DESC);第四章 數(shù)據(jù)庫完整性與安全性1. 數(shù)據(jù)庫完整性:數(shù)據(jù)庫中數(shù)據(jù)的正確性,有效性和相容性實(shí)體完整性:通過PRIMARY KEY定義,既可以在創(chuàng)建表時定義,也可以在創(chuàng)建完表之后定 義( 1)在創(chuàng)建表時定義主鍵 (P68)CONSTRAINT< 主鍵名 > PRIMARY KEY CLUSTERED| NONCLUSTERED例4.1創(chuàng)建 Recorder 表,表結(jié)構(gòu)如表 4-1 所示,其主鍵為 cRecorderId 。CR
13、EATE TABLE Recorder(cRecorderId CHAR(12) PRIMARY KEY, cRegisterId CHAR(12) ,vHistory VARCHAR(500) ,vSymptom VARCHAR(500) ,vDescription VARCHAR(1000) ,tCure TIME);( 2)在未設(shè)置主鍵的表中添加主鍵 (P69)例4 .2創(chuàng)建Register表,表結(jié)構(gòu)如表4-2所示,創(chuàng)建完成后,在CRegisterld字段上添加主鍵約束。CREATE TABLE Register(cRegisterid CHAR(12) ,cDoctorId CHAR(
14、6) ,cPatientId CHAR(10) ,tRegister TIMEfFeeFLOAT);該表創(chuàng)建時沒有定義主鍵 ,現(xiàn)添加主鍵語句如下 :ALTER TABLE RegisterADDCONSTRAINT 掛號編號 PRIMARY KEY(cRegisterID)2. 參照完整性:通過PRIMARY KEY定義那些列為外鍵,用REFERENCE短語指明外鍵參照哪 些表的主碼。3. 自定義完整性UNIQUE約束:是唯一性約束,該約束類型可以指定一列或多列,表示指定列中數(shù)據(jù)不允許 出現(xiàn)重復(fù)值。安全性存取控制的類別( 1) 自主存取控制( 2) 強(qiáng)制存取控制自主存取控制的實(shí)現(xiàn)SQL標(biāo)準(zhǔn)通過
15、GRANT (授權(quán))語句和REVOKE (收權(quán))語句實(shí)現(xiàn)自主存取控制( 1) 用戶權(quán)限(2)授權(quán)(P81)GRANT語句的一般格式如下GRANT<權(quán)限 >,< 權(quán)限>ON<對象類型x 對象名 >,< 對象類型x 對象名 >TO<用戶 >,< 用戶 >( WITH GRANT OPTION );例4.10把修改Recorder表中cRecorderld(病歷編號)和查詢該表的權(quán)限授予李明GRANT UPDATE( crecorderid), SELECTON TABLE RecorderTO李明;(3) 收權(quán)(P82)數(shù)據(jù)庫
16、管理員DBA或其他授權(quán)者可以通過 REVOKED句將授予的權(quán)限收回。REVOKE e語句的一般格式如下REVOKEv權(quán)限 >,< 權(quán)限>ON<對象類型 >< 對象名 >,< 對象類型 >< 對象名 > FROMv用戶 >,< 用戶 > CASCADE I RESTRICT;例4.16收回李明修改Recorder表中cRecorderld(病例編號)的權(quán)限。REVOKE UPDATE( cRecorderid)ON TABLE RecordeFROM李明問答題1. 數(shù)據(jù)庫的安全性 要保護(hù)數(shù)據(jù)庫中的數(shù)據(jù) ,使其免受
17、不合法的操作對它造成的破壞。我們主要通過對用戶標(biāo)識和鑒別、存取控制、視圖機(jī)制、審計和對數(shù)據(jù)加密等手段,來實(shí)現(xiàn)數(shù)據(jù)庫系統(tǒng)的安全。2. 數(shù)據(jù)庫的完整性控制 包括:關(guān)系模型的完整性規(guī)則設(shè)計與完整性實(shí)施數(shù)據(jù)庫的完整性是防止合法用戶無意中對數(shù)據(jù)庫造成破壞,比如輸入不符合語義的數(shù)據(jù)、輸出錯誤信息等 ,防范對象是不合語義的數(shù)據(jù) : 為了防止不符合語義或不合理的數(shù)據(jù)進(jìn)入數(shù)據(jù)庫,DBMS提供的數(shù)據(jù)庫的完整性控制必須包括:一是進(jìn)行完整性約束條件的定義。完整性約束 條件即完整性規(guī)則 ,是對數(shù)據(jù)庫中的數(shù)據(jù)進(jìn)行某些約束 ,這些添加在數(shù)據(jù)上的語義約束條件就稱 為數(shù)據(jù)庫完整性約束條件 ,它包括關(guān)系模型的實(shí)體完整性、參照完整
18、性和用戶定義完整性,并作為數(shù)據(jù)庫模式的一部分存入DBMS中。二是進(jìn)行完整性檢查和違約處理。檢查數(shù)據(jù)庫中數(shù)據(jù)的 完整性,看其是否滿足語義規(guī)定的條件 ,若不滿足,則采取一定的動作保證數(shù)據(jù)的完整性。數(shù)據(jù) 完整性的程度是決定數(shù)據(jù)庫中數(shù) 據(jù)的可靠程度和可信程度的主要因素。3. 視圖機(jī)制的作用 :由一個或多個基本表或者視圖導(dǎo)出的表 ,它是一個虛表。在數(shù)據(jù)庫中 ,只存 放著這些視圖的定義 ,而不存放視圖對應(yīng)的數(shù)據(jù) ,這些數(shù)據(jù)仍存放在原有的基本表中。視圖機(jī)制 是數(shù)據(jù)庫系統(tǒng)提供給不同用戶從不同角度觀察數(shù)據(jù)庫中數(shù)據(jù)的重要手段 ,它通過為不同用戶定 義不同的視圖 ,在一定的范圍內(nèi)限制了訪問數(shù)據(jù)的對象 ,使得無操作權(quán)
19、限的用戶無法看到與其不 相關(guān)的數(shù)據(jù) ,從而加強(qiáng)了數(shù)據(jù)安全保護(hù)程度。函數(shù)依賴非平凡平凡函數(shù)依賴完全,部分函數(shù)依賴傳謹(jǐn)函數(shù)依賴關(guān)系模式規(guī)范化3NF第三范式(3NF):首先 是2NFf另外非主鍵列必須第五章關(guān)系數(shù)據(jù)理論 關(guān)系模式規(guī)范化函數(shù)依賴關(guān)鍵字1NF第一范式(1NF):強(qiáng)調(diào) 的是列的原子性即列不能 夠再分成其他幾列。第二范式(2NF):首先是 1NF,另外包含兩部分內(nèi) 容,一是表必須有一個主 鍵;二呈沒有包含在主謹(jǐn)中 的列必須完全依賴于主鍵, 而不能只依賴于主睡的一部 分立直接依賴于主鍵,不能存在傳遙依賴。即不能存在:非主誕列A依賴于非主鍵列B,非主鍵列B依賴于主鍵 的情況。模式的分解 包括分解
20、的無損連接和保持函數(shù)依賴性習(xí)題單項選擇題1 設(shè)計性能較優(yōu)的關(guān)系模式稱為規(guī)范化 ,規(guī)范化主要的理論依接是 (A)。A. 關(guān)系規(guī)范化理論B. 關(guān)系運(yùn)算理論C. 關(guān)系代數(shù)理論D.數(shù)理邏輯持2. 規(guī)范化理論是關(guān)系數(shù)據(jù)庫進(jìn)行邏輯設(shè)計的理論依據(jù)。根據(jù)這個理論, 關(guān)系數(shù)據(jù)庫中的關(guān)系必須滿足 :其每一屬性都是 (B)A. 互不相關(guān)的 B. 不可分解的 C. 長度可變的 D. 互 相關(guān)聯(lián)的3.關(guān)系數(shù)據(jù)庫規(guī)范化是為解決關(guān)系數(shù)據(jù)庫中(D)問題而引入的A. 提高查詢速度B. 保證數(shù)據(jù)的安全性和完整性C. 減少數(shù)據(jù)操作的復(fù)雜性 D 插入異常、刪除異常和數(shù)據(jù)冗余4. 規(guī)范化過程主要為克服數(shù)據(jù)庫邏輯結(jié)構(gòu)中的插入異常、刪除異
21、常以及(C)的缺A. 數(shù)據(jù)的不一致性B. 結(jié)構(gòu)不合理 C 冗余度大 D. 數(shù)據(jù)丟失5. 假設(shè)關(guān)系模式R(A,B)屬于3NF,下包說法中(B)是正確的。A.它一定消除了插入和刪除異常B.仍存在一定的插入和刪除異常C.一定屬于BCNFD.A和C都是6. 當(dāng)B屬性函數(shù)依賴于A屬性時,屬性A與B的聯(lián)系是(B)A.1 對多 B. 多對一 C. 多對多 D. 以上都不是7. 數(shù)據(jù)庫一般使用 (A) 以上的關(guān)系A(chǔ). INE B. 3NE C. BCNF D.4FN8關(guān)系模式中各級范式之間的關(guān)系為 ( A)ASNFC2NFCINFB. 3NFCINFC2NFC. ANFC2NFC3NED. 2NF CINFC
22、3NF9關(guān)系模式中,滿足2NF的模式(B)A.可能是1NF B.必定是1NF C.必定是3NF D.必定是BCNF10. 關(guān)系模式R中的屬性全部是主屬性,則R的最高范式必定是(B)。A. 2NF B. 3NF C. BCNF D. 4NF11. 消除了部分函數(shù)依賴的1NF的關(guān)系模式必定是()A1NFB. 2NFC. 3NFD. 4NF12. 關(guān)系模式的候選碼可以有(B)A.0個B.1個C1或多個D多個13.關(guān)系模個或多式的主碼可以有 ()。A.0 個B.1 個C.1個或多個D. 多個14. 候選碼中的屬性可以有 (C)。A.0個 B.1個 C.1個或多個D.多個15. 設(shè)有關(guān)系W(工號,姓名,
23、工種,定額)將其規(guī)化到第三范式的答案是。(C)A. WI(工號,姓名)W2(工種,定額)B. W1(工號,工種,定額)W2(工號,姓名)CW1姓名,工種)W2(工種,定額)D .以上都不對16. 在關(guān)系模式R(A,B,C,D)中,有函數(shù)依賴集F=B - C,C- D,D - A則R能達(dá)到(B)。AINFB. 2NF C. 3NF D. 以上三者都不行17. XA,(i=1,2,k)成立是XA1A2人成立的(C)A. 充分條件B. 必要條件 C 充要條件 D. 既不充分也不必要18若關(guān)系R的候選碼都是由單屬性構(gòu)成的,則R的最高范式必定是(B)。A. INFB. 2NFC. 3NE D. 無法確定
24、19. 設(shè)關(guān)系模式R(ABC)上成立的函數(shù)依賴集F為B C,C A,p=(AB的一個分 解,那么分解P( B)。A.保持函數(shù)依賴B.丟失了 B C C.丟失了 CA D.是否保持函數(shù)依賴20. 關(guān)系模型中BNF是指(D)A.滿足2NF且不存在組合屬性B.滿足2NF且不存在部分依賴現(xiàn)象C. 滿足2NF且不存在非主屬性D.滿足NF且不存在傳遞依賴現(xiàn)象證明題設(shè)有關(guān)系模式 R( SNO,CNO,SCORE,TNO,DNAME) ,函數(shù)依賴集 F =( SNO, CNO) SCORE CNO TNO, TNO DNAME,試分解 R為 BCNF。解:初始化P =R,求得候選關(guān)鍵字為 SNO, CNO。首先從 R中分解出關(guān)系(TNO, DNAME),得 p = R1 (TNO, DNAME), R2(SNO, CNO, SCORE TNO) ,
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 書籍設(shè)計印刷合同范本文檔
- 個體診所自查報告
- 廈門落戶中介合同范本
- 業(yè)務(wù)員個人年度工作總結(jié)
- 三年級語文備課組工作總結(jié)
- 廚房調(diào)味采購合同范例
- 公司代運(yùn)營合同范本
- 農(nóng)業(yè)種植工合同范本
- 中式糕轉(zhuǎn)讓店鋪合同范本
- 一年級數(shù)學(xué)公開課教案
- 《水利工程質(zhì)量檢測管理規(guī)定》知識培訓(xùn)
- 2025年02月貴州省司法廳所屬事業(yè)單位公開招聘2人筆試歷年典型考題(歷年真題考點(diǎn))解題思路附帶答案詳解
- 2025年校長春季開學(xué)思政第一課講話稿1720字例文【供參考】
- 2025至2030年中國單板電磁制動器數(shù)據(jù)監(jiān)測研究報告
- 2024年07月國新國證期貨有限責(zé)任公司(海南)2024年招考2名工作人員筆試歷年參考題庫附帶答案詳解
- 2021年考研英語一真題
- 人教版數(shù)學(xué)八年級下冊 第17章 勾股定理 單元測試(含答案)
- 國網(wǎng)標(biāo)書制作流程
- 六年級語文教學(xué)學(xué)情分析提高六語文質(zhì)量的措施
- 中醫(yī)藥臨床適宜技術(shù)
- 銀發(fā)經(jīng)濟(jì)的發(fā)展路徑
評論
0/150
提交評論