結構資料庫
㈠ 資料庫結構
新一輪油氣資源評價資料庫是建立在國家層面上的資料庫,資料庫設計首先立足於國家能源政策和戰略制定的宏觀要求,還要結合油氣資源評價的工作特徵和各個評價項目及資源的具體情況。使用當前最流行和最成熟的資料庫技術進行資料庫的總體結構設計。
資料庫的設計以《石油工業資料庫設計規范》為指導標准,以《石油勘探開發數據》為設計基礎,借鑒前人的優秀設計理念和思路,參考國內外優秀的資源評價資料庫和油氣資源資料庫的設計技術優勢,結合本輪資源評價的具體特點,按照面向對象的設計和面向過程的設計相結合的設計方法,進行資料庫的數據劃分設計。
油氣資源評價資料庫要滿足新一輪全國油氣資源評價工作的常規油氣資源評價、煤層氣資源評價、油砂資源評價、油頁岩資源評價四個油氣資源評價的數據需求。進行資料庫具體數據內容設計。
並且,資料庫的設計要為油氣資源評價的快速、動態評價和遠程評價工作的需求保留足夠數據擴展介面,資料庫具有良好開放性、兼容性和可擴充性。
(一)數據劃分
資料庫內存放的數據將支持資源評價的整個過程。為了能更好地管理庫中數據,需要對整個過程中將用到的數據進行分類管理。具體分類方式如下(圖4-11):
圖4-11 數據分類示意圖
1.按照應用類型劃分
按照數據在資源評價過程中的應用類型劃分,可以劃分為基礎數據、參數數據和評價結果數據。
基礎數據是指從勘探生產活動及認識中直接獲取的原始數據,這些數據一般沒有經過復雜的處理和計算過程。如分析化驗數據、鑽井地質數據、盆地基礎數據等。這些數據是整個評價工作的基礎。
參數數據是指在評價過程中各種評價方法和軟體直接使用的參數數據。
評價結果數據是指資源評價中產生的各種評價結果數據,如資源量結果數據、地質評價結果數據等。
2.按照評價對象劃分
本次評價共分為大區、評價單元、計算單元三個層次,在研究中又使用了盆地、一級構造單元,在評價對象總體考慮中按照評價對象將數據劃分為大區、評價單元、計算單元等類型。
3.按照獲取方式劃分
按照獲取方式可以將數據分為直接獲取、研究獲取、間接獲取幾類。
4.按照存儲類型劃分
按照存儲類型可以將數據劃分為結構化數據和非結構化數據。
結構化數據是指能夠用現有的關系資料庫系統直接管理的數據,進一步又可以分為定量數據和定性數據兩類。
非結構化數據是指不能用現有的關系資料庫系統直接管理和操作的數據,它必須藉助於另外的工具管理和操作。如圖件數據、文檔數據等。
庫中數據類型的劃分共分六個層次逐次劃分,包括:數據存儲類型→資源類型→評價對象→應用→獲取方式→數據特徵。
對於結構化存儲的數據在應用層分為三類:基礎數據、中間數據和結果數據,基礎數據中包含用於類比的基礎數據、用於統計分析的基礎數據和直接用於公式運算的基礎數據;結構化存儲的數據在獲取方式上可以繼續劃分,其中,用於公式運算的數據可以細化為專家直接錄入、由地質類比獲取、通過生產過程獲取、通過地質研究過程獲取及其他方式。中間數據可以從以下方式獲取:標准、統計、類比、參數的關聯。結果數據的獲取有兩種方式:公式運算結果和通過鑽井、地質、綜合研究等提交的文字報告。
對於非結構化存儲的數據在應用層分為兩類:圖形數據和文檔數據。
圖形數據在獲取方式上可以繼續劃分成四種方式:通過工程測量數據獲取(如地理圖件、井位坐標數據等)、通過地質研究過程獲取(如沉積相圖、構造區劃圖等)、由綜合研究獲取(如綜合評價圖等)、其他方式。
圖形數據在表現方式上又可以進一步分為有坐標意義的圖形(如構造單元劃分圖、地理圖、井點陣圖等)、數值圖(如產烴率曲線圖、酐洛根熱降解圖等)和無坐標含義圖(如剖面圖)等。
文檔數據是指評價過程中產生的各種報告、項目運行記錄等。
(二)資料庫結構
從業務需求上,根據數據用途、數據類型和數據來源,可將本次的油氣資源評價資料庫分為三級:基礎庫、參數庫、成果庫(圖4-12)。其結構如下:
圖4-12 資料庫結構示意圖
1.基礎庫
基礎庫是油氣資源評價工作的最基礎的原始數據,有實測數據(物探數據、測井數據、鑽井數據、開發數據等)、實驗數據和經驗數據等。
確定基礎數據實際上是一項涉及油田勘探、開發等領域的多學科的復雜工作,是油氣資源評價工作的研究過程和研究成果在資料庫中的具體表現方式。在設計資料庫的過程中,需要與參數研究專家經過多次反復,才能最終確定基礎資料庫,確保基礎資料庫能滿足目前所有評價工作中計算的需要。
2.參數庫
參數庫用於存儲油氣資源評價工作所用到的參數數據,評價軟體,直接從參數庫中提取參數數據,用於計算。參數數據由基礎數據匯總而來,也可以由專家根據經驗直接得到。
本次評價中所涉及的參數大致可以分為以下幾類:①直接應用的參數;②通過標准或類比借用的參數;③通過研究過程或復雜的預處理得到的參數。
3.成果庫
成果庫用於存儲資源評價結果,包括各種計算結果、各種文檔、電子表格、圖片、圖冊等數據。
資料庫的體系結構採用分布式多層資料庫結構,包括三個組成部分:應用服務層、應用邏輯層和數據服務層。
資料庫體系結構如圖4-13所示。
圖4-13 體系結構結構圖
(1)應用服務層:應用服務層包含復雜的事務處理邏輯,應用服務層主要由中間件組件構成。中間件是位於上層應用和下層服務之間的一個軟體層,提供更簡單、可靠和增值服務。並且能夠實現跨庫檢索的關鍵技術。它能夠使應用軟體相對獨立於計算機硬體和操作系統平台,把分散的資料庫系統有機地組合在一起,為應用軟體系統的集成提供技術基礎,中間件具有標准程序介面和協議,可以實現不同硬體和操作系統平台上的數據共享和應用互操作。而在具體實現上,中間件是一個用API定義的分布式軟體管理框架,具有潛在的通信能力和良好的可擴展性能。中間件包含系統功能處理邏輯,位於應用伺服器端。它的任務是接受用戶的請求,以特定的方式向應用伺服器提出數據處理申請,通過執行相應的擴展應用程序與應用服務層進行連接,當得到應用伺服器返回的處理結果後提交給應用伺服器,再由應用伺服器傳送回客戶端。根據國內各大石油公司具體的需求開發相應的地質、油藏、生產等應用軟體功能程序模塊和各種演算法模塊。
(2)應用邏輯層:邏輯數據層是擴展數據服務層邏輯處理層,針對當前的底層資料庫的數據結構,根據具體的需求,應用各種資料庫技術,包括臨時表、視圖、存儲過程、游標、復制和快照等技術手段從底層資料庫中提取相關的數據,構建面向具體應用的邏輯資料庫或者形成一個虛擬的資料庫平台。邏輯數據層包含底層資料庫的部分或全部數據處理邏輯,並處理來自應用服務層的數據請求和訪問,將處理結果返回給邏輯數據層。
形成一個虛擬的資料庫平台我們可以應用資料庫系統中的多個技術來實現。如果系統中的一個節點中的場地或分片數據能夠滿足當前虛擬資料庫,可以在應用服務層中使用大量的查詢,生成一個以數據集結果為主的虛擬資料庫平台,並且由數據集附帶部分資料庫的管理應用策略。或者對節點上的資料庫進行復制方法進行虛擬資料庫的建立。對與需要對多個節點上的資料庫進行綜合篩選,則要對各個節點上的資料庫進行復制,合並各個復制形成一個應用邏輯層,從而建立一個虛擬數據平台。
(3)數據服務層:即資料庫伺服器層,其中包含系統的數據處理邏輯,位於不同的操作系統平台上,不同資料庫平台(異構資料庫),具體完成數據的存儲、數據的完整性約束。也可以直接處理來自應用服務層的數據請求和訪問,將處理結果返回給邏輯數據層或根據邏輯數據層通過提交的請求,返回數據信息和數據處理邏輯方法。
(三)數據建設標准
1.評價數據標准
系統資料庫中的數據格式、大小、類型遵從國家及行業標准,參考的標准如表4-23。
表4-23 資料庫設計參考標准
續表
系統中數據的格式及單位參考《常規油氣資源評價實施方案》、《煤層氣資源評價實施方案》、《油砂資源評價實施方案》、《油頁岩資源評價實施方案》及數據字典。
2.圖形圖件標准
對於地質研究來說,地質類圖件是比較重要的。各種地質評價圖形遵循以下標准(表4-24)。
表4-24 系統圖形遵循的相關標准
系統對圖形的要求為必須為帶有地理坐標意義的、滿足上述標准體系要求的矢量圖形,且採用統一的地理底圖。圖形格式採用:MapGIS圖形交換格式、GeoInfo圖形格式、ArcInfo圖形交換格式、MapInfo圖形交換格式和GeoMap圖形交換格式。
圖件的比例尺要求:
全國性圖件:1∶400萬或1:600萬
大區圖件:1:200萬
盆地圖件:1:40萬或1:50萬
評價單元圖件:1:10萬或1:20萬
圖件的內容要求符合《常規油氣資源評價實施方案》、《煤層氣資源評價實施方案》、《油砂資源評價實施方案》和《油頁岩資源評價實施方案》的規定。
(四)數據內容
資料庫中存儲的數據包括常規油氣相關數據、煤層氣相關數據、油砂相關數據和油頁岩相關數據;還有可采系數研究涉及的數據,包括研究所需基礎數據和研究成果數據;以及趨勢預測相關數據。
㈡ 什麼是資料庫表結構
表結構就是定義一個表的欄位、類型、主鍵、外鍵、索引,這些基本的屬性組成了資料庫的表結構
例如:
create table student (
idintprimarykey,
name varchar,
sex varchar,
age varchar)
id、name、sex這些就是欄位,intvarchar就是數據類型,primarykey為設置主鍵。
資料庫是以一定方式儲存在一起、能與多個用戶共享、具有盡可能小的冗餘度、與應用程序彼此獨立的數據集合,可視為電子化的文件櫃——存儲電子文件的處所,用戶可以對文件中的數據進行新增、查詢、更新、刪除等操作。
資料庫是存放數據的倉庫。它的存儲空間很大,可以存放百萬條、千萬條、上億條數據。但是資料庫並不是隨意地將數據進行存放,是有一定的規則的,否則查詢的效率會很低。當今世界是一個充滿著數據的互聯網世界,充斥著大量的數據。即這個互聯網世界就是數據世界。數據的來源有很多,比如出行記錄、消費記錄、瀏覽的網頁、發送的消息等等。除了文本類型的數據,圖像、音樂、聲音都是數據。
(2)結構資料庫擴展閱讀:
資料庫管理系統其防護手段主要有以下八點:
1、使用正版資料庫管理系統並及時安裝相關補丁。
2、做好用戶賬戶管理,禁用默認超級管理員賬戶或者為超級管理員賬戶設置復雜密碼;為應用程序分別分配專用賬戶進行訪問;設置用戶登錄時間及登錄失敗次數限制, 防止暴力破解用戶密碼。
3、分配用戶訪問許可權時,堅持最小許可權分配原則,並限制用戶只能訪問特定資料庫,不能同時訪問其他資料庫。
4、修改資料庫默認訪問埠,使用防火牆屏蔽掉對 外開放的其他埠,禁止一切外部的埠探測行為。
5、對資料庫內存儲的重要數據、敏感數據進行加密存儲,防止資料庫備份或數據文件被盜而造成數據泄露。
6、設置好資料庫的備份策略,保證資料庫被破壞後能迅速恢復。
7、對資料庫內的系統存儲過程進行合理管理,禁用掉不必要的存儲過程,防止利用存儲過程進行資料庫探測與攻擊。
8、啟用資料庫審核功能,對資料庫進行全面的事件跟蹤和日誌記錄。
參考資料來源:網路-資料庫
㈢ 資料庫文件結構怎麼填
方法/步驟
1、找到要打開的資料庫文件,如圖
㈣ 如何復制資料庫的結構
先創建一個資料庫命名為資料庫B,然後直接將資料庫A中腳本中有關創建表格,主鍵,類型什麼的都復制到資料庫B中的腳本中,這樣執行以後的資料庫的結構就和資料庫A的資料庫一樣了,只是名字不一樣。
㈤ 資料庫的組織結構是什麼
看看你要找的這里有沒有?
※資料庫的概念與用途
?資料庫的概念
什麼是資料庫呢?當人們從不同的角度來描述這一概念時就有不同的定義(當然是描述性的)。例如,稱資料庫是一個"記錄保存系統"(該定義強調了資料庫是若干記錄的集合)。又如稱資料庫是"人們為解決特定的任務,以一定的組織方式存儲在一起的相關的數據的集合"(該定義側重於數據的組織)。更有甚者稱資料庫是"一個數據倉庫"。當然,這種說法雖然形象,但並不嚴謹。嚴格地說,資料庫是"按照數據結構來組織、存儲和管理數據的倉庫"。在經濟管理的日常工作中,常常需要把某些相關的數據放進這樣"倉庫",並根據管理的需要進行相應的處理。例如,企業或事業單位的人事部門常常要把本單位職工的基本情況(職工號、姓名、年齡、性別、籍貫、工資、簡歷等)存放在表20.6.3中,這張表就可以看成是一個資料庫。有了這個"數據倉庫"我們就可以根據需要隨時查詢某職工的基本情況,也可以查詢工資在某個范圍內的職工人數等等。這些工作如果都能在計算機上自動進行,那我們的人事管理就可以達到極高的水平。此外,在財務管理、倉庫管理、生產管理中也需要建立眾多的這種"資料庫",使其可以利用計算機實現財務、倉庫、生產的自動化管理。
J.Martin給資料庫下了一個比較完整的定義:資料庫是存儲在一起的相關數據的集合,這些數據是結構化的,無有害的或不必要的冗餘,並為多種應用服務;數據的存儲獨立於使用它的程序;對資料庫插入新數據,修改和檢索原有數據均能按一種公用的和可控制的方式進行。當某個系統中存在結構上完全分開的若干個資料庫時,則該系統包含一個"資料庫集合"。
? 資料庫的優點
使用資料庫可以帶來許多好處:如減少了數據的冗餘度,從而大大地節省了數據的存儲空間;實現數據資源的充分共享等等。此外,資料庫技術還為用戶提供了非常簡便的使用手段使用戶易於編寫有關資料庫應用程序。特別是近年來推出的微型計算機關系資料庫管理系統dBASELL,操作直觀,使用靈活,編程方便,環境適應廣泛(一般的十六位機,如IBM/PC/XT,國產長城0520等均可運行種軟體),數據處理能力極強。資料庫在我國正得到愈來愈廣泛的應用,必將成為經濟管理的有力工具。
資料庫是通過資料庫管理系統(DBMS-DATA BASE MANAGEMENT SYSTEM)軟體來實現數據的存儲、管理與使用的dBASELL就是一種資料庫管理系統軟體。
? 資料庫結構與資料庫種類
資料庫通常分為層次式資料庫、網路式資料庫和關系式資料庫三種。而不同的資料庫是按不同的數據結構來聯系和組織的。
1.數據結構模型
(1)數據結構
所謂數據結構是指數據的組織形式或數據之間的聯系。如果用D表示數據,用R表示數據對象之間存在的關系集合,則將DS=(D,R)稱為數據結構。例如,設有一個電話號碼簿,它記錄了n個人的名字和相應的電話號碼。為了方便地查找某人的電話號碼,將人名和號碼按字典順序排列,並在名字的後面跟隨著對應的電話號碼。這樣,若要查找某人的電話號碼(假定他的名字的第一個字母是Y),那麼只須查找以Y開頭的那些名字就可以了。該例中,數據的集合D就是人名和電話號碼,它們之間的聯系R就是按字典順序的排列,其相應的數據結構就是DS=(D,R),即一個數組。
(2)數據結構種類
數據結構又分為數據的邏輯結構和數據的物理結構。數據的邏輯結構是從邏輯的角度(即數據間的聯系和組織方式)來觀察數據,分析數據,與數據的存儲位置無關。數據的物理結構是指數據在計算機中存放的結構,即數據的邏輯結構在計算機中的實現形式,所以物理結構也被稱為存儲結構。本節只研究數據的邏輯結構,並將反映和實現數據聯系的方法稱為數據模型。
目前,比較流行的數據模型有三種,即按圖論理論建立的層次結構模型和網狀結構模型以及按關系理論建立的關系結構模型。
2.層次、網狀和關系資料庫系統
(1)層次結構模型
層次結構模型實質上是一種有根結點的定向有序樹(在數學中"樹"被定義為一個無回的連通圖)。例如圖20.6.4是一個高等學校的組織結構圖。這個組織結構圖像一棵樹,校部就是樹根(稱為根結點),各系、專業、教師、學生等為枝點(稱為結點),樹根與枝點之間的聯系稱為邊,樹根與邊之比為1:N,即樹根只有一個,樹枝有N個。這種數據結構模型的一般結構見圖20.6.5所示。
圖20.6.4 高等學校的組織結構圖 圖20.6.5 層次結構模型
圖20.6.5中,Ri(i=1,2,…6)代表記錄(即數據的集合),其中R1就是根結點(如果Ri看成是一個家族,則R1就是祖先,它是R2、R3、R4的雙親,而R2、R3、R4互為兄弟),R5、R6也是兄弟,且其雙親為R3。R2、R4、R5、R6又被稱為葉結點(即無子女的結點)。這樣,Ri(i=1,2,…6)就組成了以R1為樹根的一棵樹,這就是一個層次數據結構模型。
按照層次模型建立的資料庫系統稱為層次模型資料庫系統。IMS(Information Manage-mentSystem)是其典型代表。
(2)網狀結構模型?
在圖20.6.6中,給出了某醫院醫生、病房和病人之間的聯系。即每個醫生負責治療三個病人,每個病房可住一到四個病人。如果將醫生看成是一個數據集合,病人和病房分別是另外兩個數據集合,那麼醫生、病人和病房的比例關系就是M:N:P(即M個醫生,N個病人,P間病房)。這種數據結構就是網狀數據結構,它的一般結構模型如圖20.6.7所示。在圖中,記錄Ri(i=1,2,8)滿足以下條件:
①可以有一個以上的結點無雙親(如R1、R2、R3)。
②至少有一個結點有多於一個以上的雙親。在"醫生、病人、病房"例中,"醫生集合有若干個結點(M個醫生結點)無"雙親",而"病房"集合有P個結點(即病房),並有一個以上的"雙親"(即病人)。
圖20.6.6 醫生、病房和病人之間的關系
圖20.6.7 網狀結構模型
按照網狀數據結構建立的資料庫系統稱為網狀資料庫系統,其典型代表是DBTG(Data Base Task Group)。用數學方法可將網狀數據結構轉化為層次數據結構。
(3)關系結構模型
關系式數據結構把一些復雜的數據結構歸結為簡單的二元關系(即二維表格形式)。例如某單位的職工關系就是一個二元關系(見表20.6.8)。這個四行六列的表格的每一列稱為一個欄位(即屬性),欄位名相當於標題欄中的標題(屬性名稱);表的每一行是包含了六個屬性(工號、姓名、年齡、性別、職務、工資)的一個六元組,即一個人的記錄。這個表格清晰地反映出該單位職工的基本情況。
表20.6.8 職工基本情況
通常一個m行、n列的二維表格的結構如表20.6.9所示。
表中每一行表示一個記錄值,每一列表示一個屬性(即欄位或數據項)。該表一共有m個記錄。每個記錄包含n個屬性。
作為一個關系的二維表,必須滿足以下條件:
(1)表中每一列必須是基本數據項(即不可再分解)。
(2)表中每一列必須具有相同的數據類型(例如字元型或數值型)。
(3)表中每一列的名字必須是唯一的。
(4)表中不應有內容完全相同的行。
(5)行的順序與列的順序不影響表格中所表示的信息的含義。
由關系數據結構組成的資料庫系統被稱為關系資料庫系統。
在關系資料庫中,對數據的操作幾乎全部建立在一個或多個關系表格上,通過對這些關系表格的分類、合並、連接或選取等運算來實現數據的管理。dBASEII就是這類資料庫管理系統的典型代表。對於一個實際的應用問題(如人事管理問題),有時需要多個關系才能實現。用dBASEII建立起來的一個關系稱為一個資料庫(或稱資料庫文件),而把對應多個關系建立起來的多個資料庫稱為資料庫系統。dBASEII的另一個重要功能是通過建立命令文件來實現對資料庫的使用和管理,對於一個資料庫系統相應的命令序列文件,稱為該資料庫的應用系統。因此,可以概括地說,一個關系稱為一個資料庫,若干個資料庫可以構成一個資料庫系統。資料庫系統可以派生出各種不同類型的輔助文件和建立它的應用系統。
? 資料庫的要求與特性
為了使各種類型的資料庫系統能夠充分發揮它們的優越性,必須對資料庫管理系統的使用提出一些明確的要求。
1.建立資料庫文件的要求
(1)盡量減少數據的重復,使數據具有最小的冗餘度。計算機早期應用中的文件管理系統,由於數據文件是用戶各自建立的,幾個用戶即使有許多相同的數據也得放在各自的文件中,因而造成存儲的數據大量重復,浪費存儲空間。資料庫技術正是為了克服這一缺點而出現的,所以在組織數據的存儲時應避免出現冗餘。
(2)提高數據的利用率,使眾多用戶都能共享數據資源。
(3)注意保持數據的完整性。這對某些需要歷史數據來進行預測、決策的部門(如統計局、銀行等)特別重要。
(4)注意同一數據描述方法的一致性,使數據操作不致發生混亂。如一個人的學歷在人事檔案中是大學畢業,而在科技檔案中卻是大學程度,這樣就容易造成混亂。
(5)對於某些需要保密的數據,必須增設保密措施。
(6)數據的查找率高,根據需要數據應能被及時維護。
2.資料庫文件的特徵
無論使用哪一種資料庫管理系統,由它們所建立的資料庫文件都可以看成是具有相同性質的記錄的集合,因而這些資料庫文件都有相同的特性:
(1)文件的記錄格式相同,長度相等。
(2)不同的行是不同的記錄,因而具有不同的內容。
(3)不同的列表示不同的欄位名,同一列中的數據的性質(屬性)相同。
(4)每一行各列的內容是不能分割的,但行的順序和列的順序不影響文件內容的表達。
3.文件的分類
對文件引用最多的是主文件和事物文件。其他的文件分類還包括表文件、備份文件、檔案的輸出文件等。下面將講述這些文件。
(1)主文件。主文件是某特定應用領域的永久性的數據資源。主文件包含那些被定期存取以提供信息和經常更新以反映最新狀態的記錄。典型的主文件有庫存文件、職工主文件和收帳主文件等。
(2)事務文件。事務文件包含著作為一個信息系統的數據活動(事務)的那些記錄。這些事務被分批以構成事務文件。例如,從每周工資卡上錄制下來的數分批存放在一個事務文件上,然後對照工資清單文件進行處理以便列印出工資支票和工資記錄簿。
(3)表文件。表文件是一些表格。之所以單獨建立表文件而不把表設計在程序中是為了便於修改。例如,一個公用事業公司的稅率表或國內稅務局的稅率就可以存儲在表中文件。
(4)備用文件。備用文件是現有生產性文件的一個復製品。一旦生產性文件受到破壞,利用備用文件就可以重新建立生產性文件。
(5)檔案文件。檔案文件不是提供當前處理使用的,而是保存起來作為歷史參照的。例如,國內稅務局(IRS)可能要求檢查某個人最近15年的歷史。實際上,檔案文件恰恰是在給定時間內工作的一個"快照"。
(6)輸出文件。輸出文件包含將要列印在列印機上的、顯在屏幕上的或者繪制在繪圖儀上的那些信息的數值映象。輸出文件可以是"假離線的"(存儲在輔存設備上),當輸出設備可
用時才進行實際的輸出。
㈥ 資料庫結構的組成
數據的視圖指的是查找到(或者處理)的記錄數和顯示(或者進行處理)這些記錄的順序。在一般情況下,視圖由過濾器和索引控制。
㈦ 什麼是資料庫的概念結構
={ E→G,G→E,F→(E,G),H→(E,G),
(F,H)→E}
(1)求出R的所有候選關鍵字;
(2)根據函數依賴關系,確定關系模式R屬於第幾範式;
(3)將R分解為3NF,並保持無損連接性和函數依賴保持性;
(4)求出F的最小函數依賴集。
參考答案:
(1)R的候選關鍵字為:(F,H)
(2)R為:1NF
(3)分解為:
(,)、(,)、(,)、(,{})
(4)最小函數依賴集為:
按定理4.3,求最小函數依賴集步驟:
F=
=
=
10、試問下列關系模式最高屬於第幾範式,並解釋其原因。
(1)R(A,B,C,D),F=。
(2)R(A,B,C,D,E),F=。
(3)R(A,B,C,D),F=。
(4)R(A,B,C),F=。
(5)R(A,B,C),F=。
(6)R(A,B,C,D),F=。
(7)R(A,B,C,D),F=。
參考答案:
只依次寫出候選關鍵字與範式等級(範式按定義判定,具體略)
(1)AB 1NF
(2)AB,E 2NF
(3)AB,AD 3NF
(4)A,B BCNF
(5)C 2NF
(6)AD 1NF
(7)AD 1NF
二、填空題
1、對資料庫的保護一般包括 安全性 、 完整性 、 並發控制 和 數據恢復 四個方面的內容。
2、對資料庫 安全 性的保護就是指要採取措施,防止庫中數據被非法訪問、修改,甚至惡意破壞。
3、安全性控制的一般方法有 用戶標識和鑒別 、 用戶存取許可權控制 、 視圖機制 、
數據加密 和 審計 五種。
4、用戶鑒定機制包括 用戶標識定義 和 用戶身份驗證 兩個部分。
5、每個數據均需指明其數據類型和取值范圍,這是數據 完整性 約束所必需的。
6、在SQL中, COMMIT 語句用於提交事務, ROLLBACK 語句用於回滾事務。
7、加鎖對象的大小被稱為加鎖的 粒度 。
8、對死鎖的處理主要有兩類方法,一是 預防死鎖的發生 ,二是 檢測死鎖發現後予以消除死鎖 。
9、解除死鎖最常用的方法是 撤消一些陷入死鎖的事務 。
10、基於日誌的恢復方法需要使用兩種冗餘數據,即 後備資料庫 和 日誌文件 。
三、簡單題
1、簡述資料庫保護的主要內容。
對資料庫的保護一般包括4個方面的內容,一是對資料庫完整性的保護,即保證庫中的數據是正確的和相容的,符合完整性約束條件的;二是對資料庫安全性的保護,即防止庫中數據被非法訪問、修改,甚至惡意破壞;三是對並發的事務進行控制,保證資料庫的一致性;四是在發生故障後,對資料庫進行恢復,盡量減少故障造成的損失。
2、什麼是資料庫的安全性?簡述DBMS提供的安全性控制功能包括哪些內容。
解:
(1)資料庫的安全性是指保護資料庫以防止非法使用所造成數據的泄露、更改或破壞。
(2)常採取的安全保護措施有用戶鑒定、存取控制、視圖保護、審計和數據加密等。
4、什麼是資料庫的完整性?DBMS提供哪些完整性規則,簡述其內容。
(1)資料庫的完整性是指保護資料庫中數據的正確性、有效性和相容性,防止錯誤的數據進入資料庫造成無效操作。
(2)DBMS提供實體完整性規則、參照完整性規則及用戶自定義完整性規則
為保障資料庫的完整性,資料庫管理系統應提供完整性約束的定義機制和檢查機制。
5、資料庫的安全性保護和完整性保護有何主要區別?
解:
資料庫的完整性和安全性是資料庫保護的兩個不同的方面。
安全性是保護資料庫,以防止非法使用所造成數據的泄露、更改或破壞,安全性措施的防範對象是非法用戶和非法操作;完整性是防止合法用戶使用資料庫時向資料庫中加入不符合語義的數據,完整性措施的防範對象是不合語義的數據,即不正確的數據。
6、什麼是事務?簡述事務的ACID特性,事務的提交和回滾是什麼意思?
解:
(1)事務是資料庫系統中執行的一個工作單位,它是由用戶定義的一組操作序列組成。
一個事務可以是一組SQL語句、一條SQL語句或整個程序,一個應用程序可以包括多個事務。事務的開始與結束可以由用戶顯式控制。如果用戶沒有顯式地定義事務,則由DBMS按照預設規定自動劃分事務。
(2)事務是由有限的資料庫操作序列組成,但並不是任意的資料庫操作序列都能成為事務,為了保護數據的完整性,一般要求事務具有以下四個特徵:
1)原子性(Atomicity)2)一致性(Consistency)3)隔離性(Isolation)4)持久性(Durability)事務上述四個性質的英文術語的第一個字母分別為A、C、I、D。因此,這四個性質也稱為事務的ACID准則。
(3)
COMMIT表示事務的提交,即將事務中所有對資料庫的更新寫回到磁碟上的物理資料庫中去,此時事務正常結束;
ROLLBACK表示事務的回滾,即在事務運行的過程中發生了某種故障,事務不能繼續執行,系統將事務中對資料庫的所有已完成的更新操作全部撤銷,再回滾到事務開始時的狀態。
7、資料庫管理系統中為什麼要有並發控制機制?
解:
每個用戶在存取資料庫中的數據時,可能是串列執行,即每個時刻只有一個用戶程序運行,也可能是多個用戶並行地存取資料庫。資料庫的最大特點之一就是數據資源是共享的,串列執行意味著一個用戶在運行程序時,其他用戶程序必須等到這個用戶程序結束才能對資料庫進行存取,這樣資料庫系統的利用率會極低。因此,為了充分利用資料庫資源,很多時候資料庫用戶都是對資料庫系統並行存取數據,但這樣就會發生多個用戶並發存取同一數據塊的情況,如果對並發操作不加控制可能會產生操作沖突,破壞數據的完整性。即發生所謂的丟失更新、污讀、不可重讀等現象。
(2)實現並發控制的方法主要有兩種:封鎖(Lock)技術和時標(Timestamping)技術。
9、什麼是封鎖?封鎖的基本類型有哪幾種?含義是什麼?
解:
(1)所謂封鎖就是當一個事務在對某個數據對象(可以是數據項、記錄、數據集、以至整個資料庫)進行操作之前,必須獲得相應的鎖,以保證數據操作的正確性和一致性。
(2)基本的封鎖類型有兩種:排它鎖和共享鎖。
1)排它鎖(Exclusive Lock):排它鎖又稱寫鎖,簡稱為X鎖,其採用的原理是禁止並發操作。當事務T對某個數據對象R實現X封鎖後,其他事務要等T解除X封鎖以後,才能對R進行封鎖。這就保證了其他事務在T釋放R上的鎖之前,不能再對R進行操作。
2)共享鎖(Share Lock):共享鎖又稱讀鎖,,簡稱為S鎖,其採用的原理是允許其他用戶對同一數據對象進行查詢,但不能對該數據對象進行修改。當事務T對某個數據對象R實現S封鎖後,其他事務只能對R加S鎖,而不能加X鎖,直到T釋放R上的S鎖。這就保證了其他事務在T釋放R上的S鎖之前,只能讀取R,而不能再對R作任何修改。
11、什麼是活鎖?如何處理?
解:
(1)封鎖技術可有效解決並行操作引起的數據不一致性問題,但也可產生新的問題,即可能產生活鎖和死鎖問題。
活鎖(Livelock):當某個事務請求對某一數據的排它性封鎖時,由於其他事務一直優先得到對該數據的封鎖與操作而使這個事務一直處於等待狀態,這種狀態形成活鎖。
(2)避免活鎖的簡單方法是採用先來先服務的策略,按照請求封鎖的次序對事務排隊,一旦記錄上的鎖釋放,就使申請隊列中的第一個事務獲得鎖。
12、什麼是死鎖?消除死鎖的常用方法有哪些?請簡述之。
(1)在同時處於等待狀態的兩個或多個事務中,每個事務都在等待其中另一個事務解除封鎖,它才能繼續執行下去,造成任何一個事務都無法繼續執行,這種狀態稱為死鎖。
(2)發生死鎖的必要條件有以下四條:
①互斥條件②不可搶占條件③部分分配條件:④循環等待條件
①一次加鎖法
一次加鎖法是每個事物必須將所有要使用的數據對象全部依次加鎖,並要求加鎖成功,只要一個加鎖不成功,表示本次加鎖失敗,則應該立即釋放所有已加鎖成功的數據對象,然後重新開始從頭加鎖。
②順序加鎖法
順序加鎖法是預先對所有可加鎖的數據對象規定一個加鎖順序,每個事務都需要按此順序加鎖,在釋放時,按逆序進行。
14、資料庫運行過程中可能產生的故障有哪幾類
(1)資料庫運行過程中可能會出現各種各樣的故障,這些故障可分為以下三類:事務故障、系統故障和介質故障。
16、什麼是日誌文件?為什麼要在系統中建立日誌文件?
解:
(1)日誌文件是用來記錄事務對資料庫的更新操作的文件。對資料庫的每次修改,都將把被修改項目的舊值和新值寫在一個叫做運行日誌的文件中,目的是為資料庫的恢復保留依據。
典型的日誌文件主要包含以下內容:1)更新資料庫的事務標識(標明是哪個事務);2)操作的類型(插入、刪除或修改);3)操作對象;4)更新前數據的舊值(對於插入操作而言,沒有舊值);5)更新後數據的新值(對於刪除操作而言,沒有新值);6)事務處理中的各個關鍵時刻(事務的開始、結束及其真正回寫的時間)。
二、填空題
1、在設計分E-R圖時,由於各個子系統分別面向不同的應用,所以各個分E-R圖之間難免存在沖突,這些沖突主要包括 命名沖突 、 屬性沖突 和 結構沖突 三類。
2、數據字典中的 數據項 是不可再分的數據單位。
3、若在兩個局部E-R圖中都有實體「零件」的「重量」屬性,而所用重量單位分別為公斤和克,則稱這兩個E-R圖存在 屬性 沖突。
5、確定資料庫的物理結構主要包括三方面內容,即: 確定數據存放位置和存儲結構 、 確定數據存取方法 和 系統配置 。
6、將關系R中在屬性A上具有相同值的元組集中存放在連續的物理塊上,稱為對關系R基於屬性A進行 聚簇 。
7、資料庫設計的重要特點之一要把 結構(數據) 設計和 行為(處理) 設計密切結合起來,並以 結構(數據) 為核心而展開。
8、資料庫設計一般分為如下六個階段: 需求分析 、 概念結構設計 、 邏輯結構設計 、資料庫物理設計、資料庫實施、資料庫運行與維護。
9、概念設計的結果是得到一個與 計算機與DBMS 無關的模型。
10、在資料庫設計中, 數據字典 是系統各類數據的描述的集合。
三、簡答題
1、資料庫設計分為哪幾個了階段?每個階段的主要工作是什麼?
解:
(1) 按照規范化的設計方法,以及資料庫應用系統開發過程,資料庫的設計過程可分為以下六個設計階段需求分析、概念結構設計、邏輯結構設計、物理結構設計、資料庫的實施、資料庫運行和維護。
(2) 以下是資料庫設計六個步驟的具體內容:
1、需求分析階段2、概念結構設計階段3、邏輯結構設計階段4、物理設計階段
5、資料庫實施階段6、資料庫運行與維護階段
5、什麼是E-R圖?構成E-R圖的基本要素是什麼?
(1)E-R圖即是實體-聯系圖,是信息世界概念模型的一種。
(2)E-R圖提供了表示實體型、屬性和聯系的方法。
實體型:用矩形表示,矩形框內寫明實體名。
屬性:用橢圓表示,橢圓形內寫明屬性名。並用無向邊將其與相應的實體連接起來。
聯系:用菱形表示,菱形框內寫明聯系名,並用無向邊分別與有關實體連接起來,同時在無向邊旁標上聯系的類型(1:1、1:n或m:n)。
6、用E-R圖表示概念模式有什麼好處?
解:
概念模式是各種數據模型的共同基礎,它比數據模型更獨立於機器、更抽象。將概念結構設計從設計過程中獨立出來,可以帶來以下好處:
(1) 任務相對單一化,設計復雜程度大大降低,便於管理。
(2) 概念模式不受具體的DBMS的限制,也獨立於存儲安排和效率方面的考慮,因此,更穩定。
(3) 概念模型不含具體DBMS所附加的技術細節,更容易被用戶理解,因而更能准確的反映用戶的信息需求。
8、一個圖書館理系統中有如下 信息:
圖書:書號、書名、數量、位置
借書人:借書證號、姓名、單位
出版社:出版社名、郵編、地址、電話、E-mail
其中約定:任何人可以借多種書,任何一種書可以被多個人借,借書和還書時,要登記相應的借書日期和還書日期;一個出版社可以出版多種書籍,同一本書僅為一個出版社所出版,出版社名具有惟一性。
根據以上情況,完成如下設計:
(1)設計系統的E-R圖;
(2)將E-R圖轉換為關系模式;
(3)指出轉換後的每個關系模式的關系鍵。
解:
(1)
(2)與(3)(帶下劃線的為主碼)
借書人(借書證號,姓名,單位)
借閱(借書證號,書號,借書日期,還書日期)
圖書(書號,書名,數量,位置)
出版(書號,出版社名)
出版社(出版社名,郵編,地址,電話,E-mail)
㈧ 傳統資料庫結構主要有什麼
傳統資料庫是關系型資料庫,開發這種資料庫的目的,是處理永久、穩定的數據。
關系資料庫強調維護數據的完整性、一致性,但很難顧及有關數據及其處理的定時限制,不能滿足工業生產管理實時應用的需要,因為實時事務要求系統能較准確地預報事務的運行時間。
㈨ 資料庫的主要架構有幾種
從資料庫最終用戶角度看,資料庫系統的結構分為單用戶結構、主從式結構、分布式結構、客戶/伺服器、瀏覽器/應用伺服器/資料庫伺服器多層結構。這是資料庫外部體系結構。
物理存儲結構、邏輯存儲結構、內存結構和實例進程結構。這是內部體系結構
㈩ 什麼叫資料庫結構
資料庫結構是指在計算機的存儲設備上合理存放的相關聯的有結構的數據集合的結構。一個資料庫結構含有各種成分,包括資料庫、數據表、欄位等。
資料庫(Database)
Visual Basic中使用的資料庫是關系型資料庫(Relational Database)。一個資料庫由一個或一組數據表組成。每個資料庫都以文件的形式存放在磁碟上,即對應於一個物理文件。不同的資料庫,與物理文件對應的方式也不一樣。對於dBASE,FoxPro和Paradox格式的資料庫來說,一個數據表就是一個單獨的資料庫文件,而對於Microsoft Access、Btrieve格式的資料庫來說,一個資料庫文件可以含有多個數據表。
1、數據表(Table)
簡稱表,由一組數據記錄組成,資料庫中的數據是以表為單位進行組織的。一個表是一組相關的按行排列的數據;每個表中都含有相同類型的信息。
表實際上是一個二維表格,例如,一個班所有學生的考試成績,可以存放在一個表中,表中的每一行對應一個學生,這一行包括學生的學號,姓名及各門課程成績。
2、記錄(Record)
表中的每一行稱為一個記錄,它由若干個欄位組成。
3、欄位(Field)
也稱域。表中的每一列稱為一個欄位。每個欄位都有相應的描述信息,如數據類型、數據寬度等。
(10)結構資料庫擴展閱讀:
資料庫結構的其他組成結構:
1、索引(Index)
為了提高訪問資料庫的效率,可以對資料庫使用索引。當資料庫較大時,為了查找指定的記錄,則使用索引和不使用索引的效率有很大差別。
索引實際上是一種特殊類型的表,其中含有關鍵欄位的值(由用戶定義)和指向實際記錄位置的指針,這些值和指針按照特定的順序(也由用戶定義)存儲,從而可以以較快的速度查找到所需要的數據記錄。
2、查詢(Query)
一條SQL(結構化查詢語言)命令,用來從一個或多個表中獲取一組指定的記錄,或者對某個表執行指定的操作。當從資料庫中讀取數據時,往往希望讀出的數據符合某些條件,並且能按某個欄位排序。使用SQL,可以使這一操作容易實現而且更加有效。
SQL是非過程化語言(有人稱為第四代語言),在用它查找指定的記錄時,只需指出做什麼,不必說明如何做。每個語句可以看作是一個查詢(query),根據這個查詢,可以得到需要的查詢結果。
3、過濾器(Filter)
過濾器是資料庫的一個組成部分,它把索引和排序結合起來,用來設置條件,然後根據給定的條件輸出所需要的數據。
4、視圖(view)
數據的視圖指的是查找到(或者處理)的記錄數和顯示(或者進行處理)這些記錄的順序。在一般情況下,視圖由過濾器和索引控制。