0
首頁 精品范文 數據庫設計

數據庫設計

時間:2022-10-17 08:12:12

開篇:寫作不僅是一種記錄,更是一種創造,它讓我們能夠捕捉那些稍縱即逝的靈感,將它們永久地定格在紙上。下面是小編精心整理的12篇數據庫設計,希望這些內容能成為您創作過程中的良師益友,陪伴您不斷探索和進步。

數據庫設計

第1篇

關鍵詞:數據庫;課程教學;案例數據庫設計

中圖分類號:TP311 文獻標識碼:A 文章編號:1009-3044(2015)31-0001-02

Optimal Design of Case Database in Database Course Teaching

HUANG Xin

(Jiaxing Technician College Department of Trade and Tourism,Jiaxing 314036, China)

Abstract:Aiming at the problem of selecting the teaching cases in, we analysis and research the case database designed int the domestic and mainstream textbook of database course. We propose a forum database named “simpleforumdb” as teaching and laboratorial case, and the detailed design of this database is given at the mean time.

Key words:database;course teaching;case database design

數據庫技術是現代IT技術的重要支撐技術,是構建各類信息系統與應用系統的核心技術和重要基礎[1]。教育部的相關文件指出“當代大學生應具備利用數據庫技術對信息進行管理、加工和處理的意識與能力,用以解決本專業領域中的問題的能力”[2]。

國內主流數據庫課程教材在組織內容時,雖然有的側重數據庫實現原理的介紹,有的以某一數據庫管理系統(如Oracle、MySQL等)為平臺介紹數據庫技術的應用,有的兼顧理論和技術,但無一例外都引入了一個或多個數據庫教學項目作為貫穿全書各章節、演示數據庫關鍵概念和技術的案例。許多在教學中廣泛使用的案例數據庫較為簡單,與實際工程項目相差較大,不能很好地覆蓋數據庫課程所有知識點,導致學生在未來工作中遇到實際項目時無法快速上手。如何設計合理的教學案例數據庫已成為數據庫課程教學亟待解決的重要課題。

1 主流數據庫課程教材使用的案例數據庫分析

下面從本專科兩個教學層次,選取兩本主流數據庫課程教材中引入的案例數據庫加以分析各自的優點和不足。

1.1 圖書管理系統數據庫

由南京師范大學鄭阿奇教授主編的數據庫課程系列教材被列為普通高等學校國家級規劃教材,在職業院校和應用型本科院校的數據庫課程教學中廣泛使用。該教材以圖書管理系統數據庫作為教學案例[3]。

1.1.1 圖書管理系統數據庫邏輯結構

圖書管理系統數據庫的邏輯結構[3]如下:

1)管理員表:Administrator(角色名,密碼,備注)

2)讀者表:TReader(借書證號,密碼,姓名,性別,出生時間,專業,借書量,照片,備注,聯系方式)

3)圖書表:TBook(ISBN,書名,作譯者,出版社,出版年月,價格,復本量,庫存量,分類號,內容提要,封面照片)

4)借閱表:TLend(借書證號,ISBN,圖書ID,借書時間,應還時間)

5)還書表:HLend(編號,借書證號,ISBN,圖書ID,借書時間,還書時間)

6)借出表:TBLend(圖書ID,ISBN,是否借出)

1.1.2 圖書管理系統數據庫設計分析

優點:圖書管理系統數據庫設計較為完整,學習者不難結合其他程序設計語言(如C#、JSP、等)構造出一個實用的數據庫應用系統作為課程設計。另外,該案例數據庫的屬性較為豐富,可涵蓋SQL語言的主要數據類型。

不足:第一,可能是為了方便數據查詢,圖書管理系統數據庫設計上存在不規范問題:部分表沒有達到3NF的規范化要求。例如在借閱表TLend中,存在非主屬性ISBN對碼(借書證號, 圖書ID , 借書時間)的部分函數依賴[4]。還書表HLend也存在類似問題。改進的方法是從借閱表TLend和還書表HLend中去除屬性ISBN,同時在TLend中加入“編號”屬性作為該表的主碼。第二,圖書管理系統數據庫的設計存在冗余問題,部分屬性屬于冗余屬性,可以從相關表中去除[4]。例如圖書表TBook中每本書的“復本量”和“庫存量”可通過對借出表TBLend中相關記錄進行聚集函數查詢(使用函數count)得到,所以這兩個屬性應該從圖書表Tbook中去除(如果存在,為了維護數據完整性系統將付出很大的性能代價)。第三,和企業實際工程項目相比,圖書管理系統數據庫略顯簡單。

1.2 學生選課數據庫

由中國人民大學王珊和薩師煊兩位教授編著的《數據庫系統概論》一書引入的案例數據庫――學生選課數據庫在國內多數本科院校授課時廣泛采用[5]。《數據庫系統概論》也是國內第一部介紹數據庫的教材,一直被國內大多數本科院校作為課程教材和主要教學參考書。

1.2.1 學生選課數據庫邏輯結構

第2篇

[關鍵詞]ORACLE數據庫 環境調整 優化設計 方案

中圖分類號:TP3 文獻標識碼:A 文章編號:1671-7597(2008)0720043-01

ORACLE數據庫中數據存取性能的改善,可以進行調整級別,第一級調整是操作系統級包括硬件平臺,第二級調整是ORACLE RDBMS級的調整,第三級是數據庫設計級的調整,最后一個調整級是SQL級。通常依此四級調整級別對數據庫進行調整、優化,數據庫的整體性能會得到很大的改善。

一、數據庫優化自由結構OFA(Optimal flexible Architecture)

數據庫的邏輯配置對數據庫性能有很大的影響,為此,ORACLE公司對表空間設計提出了一種優化結構OFA。使用這種結構進行設計會大大簡化物理設計中的數據管理。優化自由結構OFA,簡單地講就是在數據庫中可以高效自由地分布邏輯數據對象,因此首先要對數據庫中的邏輯對象根據他們的使用方式和物理結構對數據庫的影響來進行分類,這種分類包括將系統數據和用戶數據分開、一般數據和索引數據分開、低活動表和高活動表分開等等。數據庫邏輯設計的結果應當符合幾個準則:把以同樣方式使用的段類型存儲在一起;按照標準使用來設計系統;存在用于例外的分離區域;最小化表空間沖突;將數據字典分離。

二、充分利用系統全局區域SGA(SYSTEM GLOBAL AREA)

SGA是Oracle數據庫的心臟。用戶的進程對這個內存區發送事務,并且以這里作為高速緩存讀取命中的數據,以實

現加速的目的。正確的SGA大小對數據庫的性能至關重要。SGA包括以下幾個部分:一個是數據塊緩沖區(data block buffer cache)是SGA中的一塊高速緩存,占整個數據庫大小的1%-2%,用來存儲從數據庫重讀取的數據塊(表、索引、簇等),因此采用least recently used (LRU,最近最少使用)的方法進行空間管理。一個是字典緩沖區。該緩沖區內的信息包括用戶賬號數據、數據文件名、段名、盤區位置、表說明和權限,它也采用LRU方式管理。一個是重做日志緩沖區。該緩沖區保存為數據庫恢復過程中用于前滾操作。還有一個是SQL共享池。保存執行計劃和運行數據庫的SQL語句的語法分析樹。也采用LRU算法管理。如果設置過小,語句將被連續不斷地再裝入到庫緩存,影響系統性能。

三、規范與反規范設計數據庫

第一,規范化。對于范式是符合某一級別的關系模式的集合,根據約束條件的不同,一般有1NF、2NF、3NF三種范式。規范化理論是圍繞這些范式而建立的。規范化的基本思想是逐步消除數據依賴中不合適的部分,使模式中的各關系模式達到某種程度的“分離”,即采用“一事一地”的模式設計原則,因此,所謂規范化實質上就是概念的單一化。數據庫中數據規范化的優點是減少了數據冗余,節約了存儲空間,相應邏輯和物理的I/O次數減少,同時加快了增、刪、改的速度。但是一個完全規范化的設計并不總能生成最優的性能,因為對數據庫查詢通常需要更多的連接操作,從而影響到查詢的速度。故有時為了提高某些查詢或應用的性能而有意破壞規范規則,即反規范化。

第二,反規范化。在數據庫的設計過程中有時故意保留非規范化約束,或者規范化以后又反規范,這樣做通常是為了改進數據庫的查詢性能,加快數據庫系統的響應速度。反規范化的好處是降低連接操作的需求、降低外碼和索引數目,減少表的個數,從而提高查詢速度,這對于性能要求相對較高的數據庫系統來說,能有效地改善系統的性能,但相應的問題是可能影響數據的完整性,加快查詢速度的同時降低修改速度。

所以,規范與反規范都是建立在實際的操作基礎之上的約束,脫離了實際兩者都沒有意義。只有把兩者合理地結合在一起,才能相互補充,發揮各自的優點。

四、索引Index的優化設計

第一,管理組織索引。索引可以大大加快數據庫的查詢速度,索引把表中的邏輯值映射到安全的RowID,因此索引能進行快速定位數據的物理地址。對一個建有索引的大型表的查詢時,索引數據可能會用完所有的數據塊緩存空間,ORACL不得不頻繁地進行磁盤讀寫來獲取數據,因此在對一個大型表進行分區之后,可以根據相應的分區建立分區索引。DBA創建索引時,應盡量保證該索引最可能地被用于where子句中,如果對查詢只簡單地制定一個索引,并不一定會加快速度,因為索引必須指定一個適合所需的訪問路徑。

第二,聚簇的使用。Oracle提供了另一種方法來提高查詢速度,就是聚簇(Cluster)。所謂聚簇,簡單地說就是把幾個表放在一起,按一定公共屬性混合存放。聚簇根據共同碼值將多個表的數據存儲在同一個Oracle塊中,這時檢索一組Oracle塊就同時得到兩個表的數據,這樣就可以減少需要存儲的Oracle塊,從而提高應用程序的性能。

五、使用最優的數據庫連接和SQL優化方案

第一,使用直接的OLE DB數據庫連接方式。通過ADO可以使用兩種方式連接數據庫,一種是傳統的ODBC方式,一種是OLE DB方式。ADO是建立在OLE DB技術上的,為了支持ODBC,必須建立相應的OLE DB到ODBC的調用轉換,而使用直接的OLE DB方式則不需轉換,從而提高處理速度。

第二,使用Connection Pool機制。在數據庫處理中,資源花銷最大的是建立數據庫連接,而且用戶還會有一個較長的連接等待時間。解決的辦法就是復用現有的Connection,也就是使用Connection Pool對象機制。Connection Pool的原理是:IIS+ASP體系中維持了一個連接緩沖池,這樣,當下一個用戶訪問時,直接在連接緩沖池中取得一個數據庫連接,而不需重新連接數據庫,因此可以大大地提高系統的響應速度。

第三,高效地進行SQL語句設計。通常情況下,可以采用一些方法優化SQL對數據操作的表現。首先,減少對數據庫的查詢次數,即減少對系統資源的請求,使用快照和顯形圖等分布式數據庫對象可以減少對數據庫的查詢次數。其次,盡量使用相同的或非常類似的SQL語句進行查詢,這樣不僅充分利用SQL共享池中的已經分析的語法樹,要查詢的數據在SGA中命中的可能性也會大大增加。還可以限制動態SQL的使用,雖然動態SQL很好用,但是即使在SQL共享池中有一個完全相同的查詢值,動態SQL也會重新進行語法分析。

總之,提高系統性能需要一種系統的整體的方法,在對數據庫進行優化時,應對應用程序、I/O子系統和操作系統(OS)進行相應的優化。優化是有目的地更改系統的一個或多個組件,使其滿足一個或多個目標的過程。對Oracle來說,優化是進行有目的的調整組件級以改善性能,即增加吞吐量,減少響應時間。DBA能從上述方面綜合考慮優化方案,相信多數ORACLE應用可以做到按最優的方式來存取數據。

參考文獻:

[1][美]Joe Greene,Advanced Information Systems,Inc.et al. Oracle 8 服務器技術精粹 [M].清華大學出版社,1999.

[2]甕正科、王新英,Oracle 8.X For Windows NT 實用教程[M].清華大學出版社,1999.

第3篇

關鍵詞:網絡安全 漏洞 數據庫

1 信息安全庫所面臨的挑戰

信息技術的發展帶動了全球信息化的發展,從而使信息基礎設施成為社會基礎設施中必不可少的關鍵所在。信息網絡技術的應用正日益普及和廣泛,應用領域也從傳統的、小型業務系統逐漸向大型、關鍵業務系統擴展,典型的如企事業單位信息系統、金融業務系統、企業商務系統等。伴隨網絡的普及,安全日益成為影響網絡效能的重要問題,而Internet所具有的開放性、國際性和自由性在增加應用自由度的同時,對安全提出了更高的要求,這主要表現在:

1.1 開放性導致網絡的技術是全開放的,任何一個人、團體都可能獲得,因而網絡所面臨的破壞和攻擊可能是多方面的,例如:可能來自物理傳輸線路的攻擊,也可以對網絡通信協議和實現實施攻擊;可以是對軟件實施攻擊,也可以對硬件實施攻擊。

1.2 國際性意味著網絡的攻擊不僅僅來自本地網絡的用戶,它可以來自Internet上的任何一個機器,也就是說,網絡安全所面臨的是一個國際化的挑戰。

1.3 自由性意味著網絡最初對用戶的使用并沒有提供任何的技術約束,用戶可以自由地訪問網絡,自由地使用和各種類型的信息。

與此同時,層出不窮的病毒、蠕蟲和黑客攻擊給正常的網絡通信與信息資源帶來沉重的負荷和影響。

如近幾年來在全球肆虐的Code Red,Slammer,W32. Blaster等蠕蟲病毒,除了對受害站點進行DDos攻擊外,大量非正常數據包的泛洪還嚴重占用網絡帶寬,堵塞網絡,并使大量服務器工作異常,具有很強的危害性。

2 安全信息數據庫的設計

該子庫主要存儲來自于信息偵察所收集到的并支持人工修正的目標網絡的基本信息。其中,包含有配置信息表(CInfo)、服務信息表(SInfo)、漏洞信息表(VInfo)和安全依賴關系表(SDR)。

CInfo表的鍵是主機IP地址屬性;SInfo表的鍵是(主機IP地址、主機端口);VInfo表的鍵是(主機IP地址、主機漏洞ID);SDR表的鍵是(可能源主機IP,可能目的主機IP,主機漏洞ID)。CInfo與SInfo是一對多的關系,因為每臺主機可同時開放多個端口;CInfo與VInfo是一對多的關系,每個節點可能有多個漏洞;SInfo與VInfo也是一對多的關系,每個運行服務可能存在多個漏洞。CInfo與SDR,VInfo與SDR均是一對多的關系。

3 標準漏洞子庫設計

該子庫由漏洞信息表(VulInfo)和漏洞影響系統信息表(VulSys)組成。前者主要記錄了每個漏洞的BugID、/更新時間、漏洞類別、具體描述、修復方法等等;后者記錄了每條漏洞所影響的操作系統或應用軟件信息。

VulInfo表和VulSys的鍵值均是漏洞ID屬性,它們之間是一對多的關系,因為同一個漏洞可能影響多個系統。

在VulInfo表中,我們使用Bugtraq作為標識漏洞的唯一ID,是因為Bugtraq ID即將成為業界的統一標準,各個軟件供應商也已開始將自己的產品漏洞公告映射為Bugtraq編號,該編號提供了一個統一、一致、可比較的漏洞管理機制。

由于這兩個組織的漏洞數據庫都不提供直接的訪問,因此設計一個漏洞數據獲取插件。

根據各個漏洞信息的URL開啟多個線程,發送相應的HTTP GET請求,然后讀取Web Server端的響應。由于漏洞數量相當多,如果由每個線程同時完成讀取響應,分析數據并填寫數據庫,不但會消耗大量的系統資源,而且很可能導致大量GET請求失敗。因此,我們采取了實時線程獲取原始漏洞數據并以簡單的格式存儲,然后主線程進行離線的數據分析,并完成寫入數據庫的任務。另外,由于可能存在GET請求失效的情況,將導致某些漏洞的信息缺失或不完整。為了保證得到所有已有漏洞的信息,我們還采取了日志記錄機制,即,主線程開啟一批線程抓取信息并等待其全部結束后,根據每個線程錄入的日志找出需要重新抓取的漏洞,重新開啟一批線程,如此反復,直到所有漏洞數據都被成功獲取。

由于目前實際情況的限制,只能在國際安全組織站點上被動的更新漏洞庫。如果可以建立國內統一的緊急相應中心漏洞數據庫,那么中心可以定期的向各個網絡風險評估管理系統的標準漏洞子庫漏洞更新數據。

可見,執行相應的風險控制措施,使風險等級降低到可接受的水平。

參考文獻:

[1]Information Assurance Technical Framework. IATF Document [EB/OL].Release 3.1.

[2]National Computer Security Center,Department of Defense Trusted Computer System Evaluation Criteria,DoD 5200.28-STD,December 1985

[3]David Moore,Vern Paxson,Stefan Savage etc. The Spread of the Sapphire/Slammer Worm[EB/OL].2003.

第4篇

數據庫設計系統設計數據庫設計習慣系統設計分為兩個部分,也可以說是兩個階段,即數據庫設計與系統功能設計。構建一個完善的系統需要這兩個階段的充分考量、周密設計、合理聯接以及密切配合。在這兩個設計階段中數據庫設計階段是整個系統設計的根基,數據庫設計關乎系統功能實現度、穩定性、擴展性等多個方面的內容,其重要性可想而知。然而目前的情況是:從學校到社會,從教師到學生,從思想到行動都以實現功能,做上層的表面文章為主流。這不僅會為系統留下隱患,也將成為整個軟件開發行業的隱患。

一、海量數據環境到來為數據庫設計提出的新高度

數據庫設計是近些年出現的技術領域。早期的時候,數據庫是以一個黑盒的方式,附屬到某個系統當中的,開發人員對它的關注很少。互聯網的時代,系統數據量呈幾何級數激增,數據存儲與表示也使用了TB,PB乃至ZB等單位。在這種情況下各種性能問題日益凸顯,數據庫由于其載體與容器的身份承擔了其中的很大一部分。海量數據帶來的存儲、查詢速度以及容災等方面的壓力是這一環境下的新問題。無論是項目負責人、開發人員還是DBA(Database Administrator),都不可回避地要面對這個問題。

在這種大數據環境下人們對數據庫性能的優劣俞發關注,對系統設計階段中的數據庫設計階段也提出了新的更高的要求,數據庫功能也正在從數據存儲工具的角色轉變成數據處理器的角色。因此,目前的系統設計中也總是將數據庫從系統設計中拿出來單獨進行設計。一個數據庫性能的好壞,通常是在系統設計階段就決定了的。

二、好的數據庫設計所應具備的基本條件

1.充分體現系統的需求

數據庫是為應用服務的,好的數據庫設計應該首先能滿足應用系統的業務需求,能夠準確表達數據間關系。

2.能夠保證數據的準確性和一致性

通過主外鍵、非空、限制、唯一索引等保證數據的健壯。

3.提高數據的查詢效率

通過合理表結構,安排物理存儲分區、增加索引等方式,提高數據的讀取速度,提高查詢效率。

4.有好的擴展性

好的數據庫設計在必要時應能根據需求進行數據結構的擴展。

三、重視不足的數據庫設計的具體體現

不良的數據庫設計,必然會造成很多問題,輕則增減字段,重則系統無法運行。對數據庫設計重視不足在具體設計中可體現在很多方面,現列舉其中的部分內容:

1.與需求不符

數據庫是需求的直觀反應和表現。在數據庫設計之前對用戶需求沒有進行詳細了解與必要的分析,在設計過程中也沒有同用戶及使用單位進行必要的溝通。這樣往往造成數據庫在設計上的不實用。與用戶需求不符將使整個系統無法交付使用。

2.字段設計不合理

一是設計中缺少必要的字段,造成無法跟蹤數據變化、限制用戶操作或無法進行數據分析。二是字段長度過短或字段類型過于明確,使可發揮、可拓展的空間太小。設計不合理的字段如果用于查詢將造成SQL查詢語句過于復雜,而使查詢無法順利進行。

3.數據完整性喪失

通常指存儲大量數據的數據表之間的關聯過多,包含主外鍵關系的數據表之間的關聯字段設計方式不合理,或是多張數據表之間耦合度過高,更新與刪除操作后就容易造成程序出錯。

除上述內容之外,因對數據庫設計過程重視不夠而非技術不足所造成影響還有很多,在此不一一列舉。需要相關人員明確的是系統設計如同所有項目一樣包括各個環節。例如,汽車制造過程包括圖紙設計、模型制作、樣車制造、小批量生產,最后是批量生產等環節。制造過程環環相扣,后一過程將建立在前一過程正確的前提基礎之上。很顯然越是初始環節出現問題對整個項目帶來的打擊越大。在開發順序上由于數據庫設計階段位于整個系統設計的前端,因此在此環節出現的問題其影響是具大的。

四、如何培養良好的數據庫設計習慣

一般來說,在系統設計時間與任務量的安排上,數據庫設計至少應占用整個項目開發的60%以上。這樣才能保證系統的強壯、可靠與穩定。從事系統設計的相關人員要養成良好的數據庫設計習慣主要應從以下兩個方面著手。

1.轉變觀念

首先,很多計算機專業的學生、教師以及真正的開發設計人員受社會大環境的影響在學習與工作中沒有踏實與務實的作風。再者,很多承擔專業教學的教師沒有真正的系統設計經歷,很難給學生的系統設計習慣進行正確的引導。還有,學習的動力導致學習的效果。學生在學習前就已經對各門專業課程進行了“三六九等”的劃分。認為各類流行的語言與開發工具是重要的,是簡歷中的“添彩”之處,是今后工作必備的。其實,各種語言一通則百通,并不需要面面俱到。因此,這就需要“產學研”人員都能轉變觀念,以培養正確的設計習慣。

2.增加大型系統開發經歷

大型系統開發其交付后都能具有較高的實際應用價值,其對數據庫設計的要求必然符合其應有的地位。之所以在觀念上對數據庫設計存在重視不足的問題同相關人員沒有大型系統開發經歷有一定的關系統,開發經驗總停留在模擬系統階段是無法真正認識到數據庫設計的重要性的。

五、結語

綜上所述,可見數據庫設計在系統設計中的作用是舉足輕重的。對數據庫設計重要性的忽視必將為整個系統埋下隱患,對系統以及開發人員而言所要付出的代價也將是巨大的。

參考文獻:

[1]譚懷遠.讓Oracle跑得更快2――基于海量數據的數據庫設計與優化.電子工業出版社,2011.

第5篇

【關鍵詞】數據庫設計程序 通用外掛式輔助 離散制造執行系統

數據庫設計的優劣和體現性能的高低對整個系統軟件的生命周期長短具有重要的影響意義,其中輔助數據庫設計程序是軟件開發和應用最有效的輔助設計工具。現階段,數據庫設計發展常應用的軟件技術和數據處理方式是SDE中間件技術。這種技術的應用缺乏通用性和一般性,只能針對某一種具體的數據庫和軟件進行設計。同時,產品化軟件數據庫管理應用程序只是簡單化的數據管理系統,不具有軟件設計和數據整理的基本功能。為此,集合數據庫輔助設計程序和軟件系統開發為一體的輔助程序得到了越來越多人的研究和關注,文章為此對通用外掛式輔助數據庫設計程序進行分析研究。

1 通用外掛式輔助數據庫設計程序

1.1 概念

通用外掛式輔助數據庫設計程序中的外掛式主要以用戶界面為基本呈現形式,借助這種界面實現對數據庫內容的靈活處理,并在相應軟件系統開發的同時,實現軟件和數據庫設計的開發和自定義設計。

1.2 參數傳遞的含義

通用外掛式輔助數據庫設計程序不僅需要應用輔數據庫設計,而且還需要通過模塊化參數信息的傳遞來實現對軟件模塊化的設計。這種設計一般需要應用函數的形式來充分展現模塊的功能,并借助各種不同的參數代號信息實現各種不同的操作,進而滿足不同程序模塊的設計需求,具體的實現方式如下所示:

(1)Q代表另一個表字段的名稱,能夠將表的記錄信息從一個字段傳遞到另一個字段上,且這種字段在新增窗體中顯示為一種隱藏字段。

(2)B代表本字段的編輯可以省略掉最后一項的內容。基本含義為類型、讀寫字段、名稱顯示、Where條件、Order排序等。

(3)R代表取值為主表傳入的字段值,基本含義為類型、本表字段名稱和父表字段的名稱。

(4)R含義為類型、表名、讀寫字段、顯示名稱、Select語句。

(5)S表示的是通用模塊中用戶自擬定義的字段。

(6)W表示不存在的表的字段。

1.3 通用外掛式輔助數據庫設計程序的特點

(1)能夠面向數據庫的管理進行全方位詳細設計。這種詳細的設計包含視圖和存儲過程中數據庫設計常應用的方法和技術。

(2)這種設計支持無代碼的程序開發,具體的自定義設計能力很強,在模塊化思想的支撐下能夠以參數的形式將模塊功能進行輸入。

(3)能夠進行流程化的處理。流程化的處理具體是指能夠實現對已經建立好的數據庫表格在外掛式的數據庫設計程序中進行統一化的管理。

(4)開放式的數據管理。這種管理方式對數據庫的格式不限制,能夠對網絡數據的設計和開發進行支持。

2 通用外掛式輔助數據庫設計程序的實現方法

在DMES的系統管理中,數據庫表越多、呈現的關系越復雜則是越難管理。在離散式制造業通用外掛式輔助數據庫設計程序復雜的情況下,通用外掛式輔助數據庫系統怎樣實現對各種軟硬件的管理是有關人員需要面臨的問題。

2.1 程序框架結構的設計

通用外掛式輔助數據庫設計程序系統主要由以下幾部分組成:

2.1.1 管理程序

管理程序主要是對車間內部的生產和執行問題進行全面的負責和管理。

2.1.2 計劃服務程序

計劃服務程序能夠對車間內部任務的布置和計劃的調整進行全面的整合。

2.1.3 通信程序

通信程序主要是對施工現場作業的數據信息進行采集,并在信息采集的基礎上有效實現軟件系統和硬件系統數據信息的交互性應用。

2.1.4 接口程序

接口程序主要是實現DMES系統和其他系統進行有效整合的重要系統數據,能夠為生產車間的上層系統提供一種全面化的服務,是各種數據進行交流和溝通的重要通道。程序框架結構的設計如圖1所示。

2.2 DMES軟件系統主要解決的問題

(1)在協助數據庫資源系統進行有效管理的同時,輔助系統軟件的開發。DMES軟件系統在對數據庫資源進行有效管理的同時,能夠應用一種無代碼的開發技術來實現對軟件模塊的開發,將軟件系統的開發模式由原來單純的代碼開發轉變為一種可配置的軟件開發模式。

(2)利用可視化管理數據庫表字段的方式進一步提升數據庫表及其字段的可視化程度。

(3)利用通用性的輸入條件函數,實現對數據庫表格的關聯性操作,并利用不同的字母代表不同的操作模塊。

2.3 DMES軟件系統程序的實現

DMES軟件系統程序的實現應用Delphi6.0進行開發,并采用ini的方式來保存系統相應的配置,提升對數據庫信息的靈活化應用,實現對各種數據庫鏈接的統一化管理。

3 結束語

通過實踐研究證明,這種設計程序的開發形式能夠在最大限度上縮短軟件程序的開發時間,減少軟件開發中的成本錯誤問題,方便了開發人員的工作程序,提升了工作人員的工作效率。為此需要有關人員對通用外掛式輔助數據庫設計程序進行更深一步的研究。

參考文獻

[1]鐘潤陽,戴青云,周科,戴鑫波,王進.通用外掛式輔助數據庫設計程序[J].計算機輔助工程,2009,01:83-86.

[2]鐘潤陽,戴青云,周科.基于外掛式通用數據庫輔助設計程序的實現[A].廣東省科學技術協會、香港理工大學、廣東省機械工程學會.第十屆粵港機電工程技術與應用研討會暨梁天培教授紀念會文集[C].廣東省科學技術協會、香港理工大學、廣東省機械工程學會,2008(04).

作者簡介

徐安令(1980-),男,云南省宣威市人。碩士學位。現為德宏師范高等專科學校講師。研究方向為數據庫及程序設計。

第6篇

關鍵字:在線考試系統;數據庫;設計;實現

中圖分類號:TP311文獻標識碼:A文章編號:1009-3044(2012)03-0508-04

The Design and Implementation of Database for Online Examination System

Liu Hong-jiang

(Aba Teachers’College, Aba 623002, China)

Abstract: With the continuous development of computer and network technology as well as test technologies and methods, online exami? nation can meet the requirements of paperless examination and become one of the most important means of examination. In this trend, da? tabase will been designed for the establishment of online examination system, all these works is to expand the areas of students’ knowledge and to ensure fairness of the examination to a certain extent and also to improve the modernization level of test administration. Online ex? amination system is a typical management information system (MIS), which runs on windows 2003 sever, using a powerful and easily to op? erate environment named Microsoft SQL server 2005 as its database development platform.

Key words: online examination system; database; design; implementation

21世紀是一個“知識爆炸”的時代,信息更新的速度達到空前。計算機技術與網絡技術越來越廣地應用于社會的各個領域,它們在現代高等教育中的應用,是現代高等教育發展的需要,也是改革教育模式,提高學校教學效果和教學效率、提高科研和管理水平的必要手段。基于網絡的在線考試和無紙化辦公一樣必然成為社會發展的趨勢,在線考試是采用大規模試題庫的計算機網絡考試模式使得它顛覆了傳統的考試方式,使得考試出卷、答題方式以及成績管理發生著巨大的變革,考試過程變得方便、高效、快捷、公正。有趨勢表明,標準化的在線考試方式已當今考試的發展方向,當前國際上許多考試認證如GRE,其出題、答卷以及評分都是在計算機上完成的。和傳統的考試方式相比,無紙化的在線考試有著其科學、及時、準確、公平等優點,這是傳統考試形式無法替代和比擬的優勢。

1需求分析

需求分析是數據庫設計的重要步驟之一,這一階段的主要工作是確定使用這一數據庫系統的用戶,以及他們的業務活動。管理員主要負責錄入開課信息,教師和學生名單以及查詢學生試卷等工作。

教師主要負責錄入試題,修改試題,生成試卷和閱卷等工作。

學生主要完成在規定時間內的答題任務。

2數據庫設計

數據庫設計對于在線考試系統的開發來說是一個十分重要的環節,數據庫設計質量的優劣直接影響到數據庫中數據的冗余度,一致性等問題。下面就對數據庫的規范化設計進行說明。2.1關系數據理論及規范化

針對一個具體的數據庫應用應該構造幾個關系模式?每個關系由哪些屬性組成?即如何構造適合于它的數據模式,這是關系數據庫邏輯設計的問題。為了解決上述問題并使數據庫設計走向規范,1971年E.F.Cldd提出了規范化理論。關系數據理論就指導產生了一個具體確定的、好的數據庫模式的理論體系及范式理論。范式理論的具體內容如下:

第一范式:如果關系模式R的每一個屬性都是不可分解的則R為第一范式的模式記為R∈1NF。

第二范式:如果關系模式R是第一范式,且每個非主屬性都完全函數依賴于關鍵字,則稱R為滿足第二范式的模式,記為R∈2NF。

第三范式:如果關系模式R是第二范式,且沒有一個非關鍵字屬性石傳遞函數依賴于候選關鍵字屬性,則稱R滿足第三范式的模式,記為R∈3NF。

擴充第三范式:如果關系模式R是第三范式,且每一個決定因素都包含有關鍵字,則稱R為滿足擴充第三范式的模式,記為

R∈BCNF。

第四范式:如果關系模式R是第三范式,且每個非平凡多值依賴XY(Y不是X的子集),X都含有關鍵字,則稱R為滿足第四范式的模式,記為R∈4NF

2.2數據庫設計

在線考試系統的各個功能模塊是否能夠緊密地結合在一起以及如何結合,,關鍵在于數據庫。因此對在線考試系統的數據庫進行合理的邏輯設計和有效的物理設計是關鍵。

2.2.1概念設計

這一部分的工作,主要是將需求分析階段得到的用戶需求抽象為信息世界的概念模型,采用自底向上的方法,進行系統的概念設計,得到以下實體及屬性的E-R圖。

教師實體包括教師編號、教師姓名用戶名和密碼四個屬性,其E-R圖如圖1所示。

圖1教師實體及屬性局部E-R圖

學生實體包括學號、姓名、性別和密碼四個屬性,其E-R圖如2圖所示。

圖2學生實體及屬性局部E-R圖

試題庫實體包括課程名稱、題目內容、參考答案、題目類型、難易度、備選答案A、備選答案B、備選答案C、備選答案D、備選答案E、備選答案F等屬性,其E-R圖如3圖所示。

圖3試題庫實體及屬性局部E-R圖

試卷組成實體包括試卷代碼、課程名稱、試卷編號、考試日期等屬性,其E-R圖如4圖所示。

圖4試卷組成實體及屬性局部E-R圖

試卷實體包括試卷編號、課程名稱、狀態、得分、大題號、小題號、試題庫中序號、學生學好、學生答案等屬性,其E-R圖如5圖所示。

圖5試卷實體及屬性局部E-R圖

根據需求分析,教師、題庫、學生和試卷四個實體之間的關系如圖6所示。

圖6考試局部E-R圖2.2.2邏輯設計

由于現在設計數據庫系統都普遍采用關系模型的關系數據庫管理系統,因此邏輯設計的主要工作是將概念設計得出的實體關系模型(E-R圖)轉化成關系模式。

具體如下:

教師(教師編號,教師姓名,用戶名,密碼)

學生(學號,姓名,性別,密碼)

試題庫(課程代碼,課程名稱,題目類型,題目內容,被選答案A,被選答案B,被選答案C,被選答案D,參考答案,難易度)

試卷組成(試卷代碼,課程名稱,題號(大題)1,試題類型1,小題數1,難題數1,中題數1,簡單題數1,每小題分數1,題號(大題)2,試題類型2,小題數2,難題數2,中題數2,簡單題數2,每小題分數2,題號(大題)3,試題類型3,小題數3,難題數3,中題數3,簡單題數3,每小題分數3,題號(大題)4,試題類型4,小題數4,難題數4,中題數4,簡單題數4,每小題分數4,題號(大題)5,試題類型5,小題數5,難題數5,中題數5,簡單題數5,每小題分數5,題號(大題)6,試題類型6,小題數6,難題數6,中題數6,簡單題數6,每小題分數6,題號(大題)7,試題類型7,小題數7,難題數7,中題數7,簡單題數7,每小題分數)

試卷(試卷編號,試卷名稱,大試題號,小試題號,試題庫中序號,學號,學生答案,得分)

成績(學號,試卷編號,課程名稱,成績)

3數據庫表結構的建立

數據庫表結構的建立在邏輯設計階段得出的關系模型的基礎上,并對其進行適當的優化,各關系轉化后的表結構具體如下:

Teacher表(教師信息表):主要字段有教師編號,用戶名,密碼及權限,其中教師編號為主鍵,由于教師對系統掌握的程度不同,故增加一個權限字段,管理員的權限為H,理工科教師為權限為M,文科藝體教師的權限為L。

Student(學生信息表):主要字段有學號、姓名、性別和密碼,其中學號為主鍵。

Paper_lib(試題庫表):主要字段有標識、題目類型、題目內容、備選答案A、備選答案B、備選答案C、備選答案D、參考答案和難易度。其中增加一個標識來作為主鍵,用于確定記錄的唯一性。在該表中,增加一個標識來作為主鍵,確定記錄的唯一性。

Paper_comp (試卷組成表):主要字段有標識、試卷名稱、課程名稱、試卷代碼、題號(大題)1、試題類型1、小題數1、難題數1、中等題數1、簡單題數1、……、題號(大題)7、試題類型7、小題數7、難題數7、中等題數7、簡單題數7、考試時間、考試狀態、考試學期,教學班號,教師編號等。其中,教師編號為外鍵,與教師表建立關系。在該表中,增加一個標識作為主鍵,確定記錄的唯一性。

Paper(試卷表):主要字段有標識、試卷代碼、試卷編號、試題(大題)號、小題號、學生答案、試題庫中序號、學號、得分。其中學生學號為外鍵,與學生表建立關系;試卷代碼為外鍵,與試卷組成表建立關系。在該表中,增加一個標識作為主鍵,確定記錄的唯一性

4數據庫的連接

4.1數據庫平臺選擇

只有選擇合適的數據庫系統,然后根據數據庫設計階段得出的表結構,用具體的數據庫語言來實現之后,才能實現數據庫的連接。目前流行的數據庫系統有很多,例如SQL Server,MySQL,Sybase,Oracle等,這里我們選擇Microsoft的SQLserver 2005作為在線考試系統的數據庫開發平臺。

4.2系統開發平臺選擇

在線考試系統可以選擇的開發平臺也很多,例如jsp,PHP,.Net或者是asp等。這里我們選擇一種輕量級而且開源的開發平臺PHP,PHP(Hypertext Preprocessor,超文本預處理器)是一種HTML內嵌式的語言,混合了C、Java、Perl等多種語言的特點,被廣泛應用的開源式的多用途腳本語言。PHP最重要的特征是它的數據庫集成層,完全支持SQL標準,可以支持大多數數據庫系統,并且具有數據庫訪問速度快、運行效率高、性能穩定、操作簡單等優勢。PHP提供了標準的數據庫接口,數據庫連接方便,兼容性強;擴展性強;即可以用來開發WEB應用程序,也可用來開發普通的應用程序,應用范圍非常廣.

4.3數據庫連接

PHP與SQL Server數據庫的連接有兩種方式,一種是PHP通過ODBC訪問SQL Server 2005。ODBC(Open DataBase Connectivity)即開放式接口,是由微軟主導的數據庫連接標準,目前所有的關系數據庫都提供了ODBC驅動程序,所以ODBC已經成為數據庫訪問的業界標準,并得到了廣泛應用。另外一種是PHP直接訪問SQL Server 2005時,利用PHP提供的Mssql函數庫來創建連接。分為一般和永久兩種連接方式:

一般連接使用的函數是mssql_connect。

永久連接使用的函數是mssql_pconnect。

其語法如下:

int mssql_connect(string [servername],string [username], string [password]);

int mssql_pconnect(string [servername],string [username], string [password]);

在系統中,采用的是第一種方式使用mssql_connect函數進行數據庫的連接,創建一個php與數據庫之間的連接文件,命名為conn_db.php來實現的。conn_db.php的代碼如下:

$dbconnected=@mssql_connect("數據庫服務器名稱或IP","用戶名","密碼")

or die("連接數據庫服務器失敗!");

mssql_select_db("database",$dbconnected);//選擇要操作的數據庫

?>

為了系統的安全,用@符號來屏蔽系統在客戶端瀏覽器顯示錯誤提示,同時用die()函數來顯示連接數據庫服務器失敗的錯誤提示并直接退出程序。

用mssql_close函數關閉連接,創建一個php與數據庫之間的斷開文件,命名為close.php

@mssql_close($dbconnected);

?>

5結論

本文從需求分析、概要設計、邏輯設計及數據庫的實現及連接等方面進行簡單地闡述。對于在線考試系統的數據庫設計有一定的參考價值。

參考文獻:

[1]申時凱,李海雁.數據庫應用技術[M].2版.北京:中國鐵道出版社,2005.

[2]陳恭和.數據庫基礎與SQL應用教程[M].北京:高等教育出版社,2003.

[3]石志國.JSP網絡開發詳解[M].北京:電子工業出版社,2007.

第7篇

關鍵詞:農業信息數據庫;設計;探究

1. 農業信息數據庫整體技術框架選用的分析

現階段,主要有兩類技術框架可供選擇,一是.NET技術,二是B/S結構。NET技術是微軟設計并主推的一種技術框架,不僅在當前獲得了一定的應用,而且具有廣泛的應用前景。相較其他技術框架而言,.NET技術優勢明顯,表現如下:一,檢索功能強大,既快又準;二,并發處理數方面優于其它;三,是微軟的主推項目,具有十分廣闊的發展前景及應用前景;四,利用網絡便可有效處理數據中心的一系列外部擴建問題,既不需要客戶端軟件安裝,又不需要客戶端軟件升級,還不需要相應的跟蹤服務,節省了大量運營成本。所謂B/S結構指的是,瀏覽器與服務器結構,是一種基于C/S結構的改良產品。[1]該種結構將WWW瀏覽器作為操作者的工作界面,利用服務器端來完成對絕大部分關鍵事物邏輯的處理,并表現出“3-tier結構”特點。B/S技術也具有一定的優勢,表現如下:一,在很大程度上,實現了對客戶端電腦載荷的有效精簡,進而降低了使用者的總體成本;二,在實際應用過程中,該結構易于把握;三,不僅具有一次性開發到位的特點,而且在訪問及操作方面,突破了時間、空間以及接入方式的諸多限制;四,可根據設置相應的訪問權限,從而保證整個數據庫具有較高的安全級別。在進行農業信息數據庫開發環節,建議采用如下技術手段:在技術框架方面選擇.NET2.0;在體系結構方面選擇B/S。

2.農業信息數據庫的設計要求

2.1數據庫的建設原則及其構建風格

2.1.1數據庫的建設原則

在建設數據庫的過程中,應緊緊圍繞建設目標進行,既要做大,又要做強,還要做精,另外,應保證在整體風格上趨于統一,還應保證各個數據庫具有自己的特色,即做好統分布置[2]。

2.1.2數據庫的構建風格

在建設數據庫過程中,應在遵循建設原則的基礎上,體現其主體風格——清新簡潔,一改傳統數據庫的諸多不足(拘謹以及繁雜等)。標識由三大部分組成:一,數據庫全稱;二,數據庫英文拼寫;三,數據庫標識。標識顯示在數據庫系統的每一個頁面上,且顯示在操作頁的左上角位置。選擇淡藍色作為首頁的基準色調,并選用宋體字,無論是字體大小,還是內容布局,均應充分照顧到視覺感官的舒適性。值得一提的是,首頁的相關設計要保持相對固定,以為其它數據庫設計提供參照,另外,在設計其它數據庫的過程中,應注意各自特點的體現。

2.2子數據庫的構建方式闡述

2.2.1整體架構

數據中心的建設是一個相對漫長的過程,短則數年,多則數十年。在此過程中,數據庫在數量及容量方面也隨之不斷發展和擴充,所以,要對體系結構的整體性能進行綜合考慮,包括穩定性,包括安全性,包括長遠性,還包括運營成本等。總而言之,要保證整體架構的科學性。

2.2.2后臺建設及應用

數據庫后臺建設質量的高低是至關重要的,和數據庫實際工作效率息息相關。所以,在后臺建設及應用的過程中,應特別注意以下幾點:一,批量數據處理;二,數據格式規范化;三,防止同類數據反復錄入等[3]。

3.農業信息數據庫的建設內容及其開發設計

3.1農業信息數據庫的建設目的

在農業信息化進程中,農業信息數據庫是不可或缺的組成部分,將會對當地的農業發展及社會進步產生至關重要的影響。所以,設計并構建科學合理的農業信息數據庫系統便成了當務之急,是推動我國農業信息化不斷深入的一個重要手段。

3.2農產品樹狀分類數據倉庫群

將初級農業產品用作數據庫系統的一個基本分類原則。利用樹狀結構這一形式以實現對農產品數據庫群的合理構建。以“玉米樹狀分類數據庫”為例。在該數據庫中,將玉米的一些基本信息(品種、栽培以及加工等)定義為一級結點。加工這一項可作進一步細化,包括加工企業,包括加工產品,還包括加工技術等,此為二級節點。加工產品這一項還可作進一步細化,包括生產企業,包括用途,還包括市場需求等,此為三級節點。這些不同級別的節點信息,最終構建了一個相對完整的玉米樹狀分類數據庫。

信息采集及存儲環節,采用如下方式進行編碼:信息類別漢語拼音縮寫+數字序號(例如,玉米品種1——ympzl)。該數據庫覆蓋范圍非常廣泛,涉及數百個基本品種,是一個極為豐富、系統的分類數據庫群。第一期建設計劃主要包括以下15大種類:一,水稻;二,玉米;三,大豆;四,高粱;五,西紅柿;六,胡蘿卜;七,馬鈴薯;八,蘋果;九,桃;十,梨;十一,豬;十二,牛;十三,羊;十四,雞;十五,蛋。

數據采集方式屬于半自動式,先對采集對象進行人工界定,然后在抓取軟件的幫助下,對信息對象進行采集,并儲存在本地,最終展開相應分析及整理。數據庫管理軟件的諸多功能如下:一,數據錄入;二,數據修改;三,數據刪除;四,數據查找;五,數據分析;六,數據統計。對數據資源進行采集之前,應確定采集方式:一,主要方式,包括網上收集,包括共享,還包括自由數據整理;二,輔助方式,包括購置,還包括交換等。計劃采集100G的數據資源[4]。

3.3農業決策支持系統

所謂農業決策支持系統指的是,以政府機構為主要服務對象的一個資源整合體系。在建設該系統的過程中,一方面應以原有系統為基礎進行優化升級,另一方面應致力于系統集成軟件的有效開發,以實現對該系統的重新分層組建。

3.4農業預警及其農產品動態信息監控數據庫

該數據庫能對農業生產信息進行采集和分析,能對農村經濟發展信息進行采集和分析,進而總結出符合實際情況的農產品供求信息,還有價格行情。

該數據庫能以互聯網為通道,也能以電話網為通道,因而在數據采集方面具有一定的便捷性。另外,該系統建立了一套較為成熟的信息制度化與程序化的互動機制,不僅能夠及時發出農業預警,還能實現對農產品動態信息的有效監控。

3.5農業圖片資源及其文獻資源集成數據庫

對于農業數據信息而言,圖片資源是不可或缺的組成部分。現階段,涉農圖片不僅形式雜亂,而且較為分散,所以,主要采用以下方式進行收集:一,征集;二,共享;三,網上收集;四,掃描加工;五,購買;六,自行拍攝。在設計圖片數據庫管理軟件的過程中,應使其具備如下功能:一,圖片編輯;二,圖片分類;三,圖片錄入;四,圖片檢索等。另外,應基于“分類數據庫”這種形式,對圖片資源展開相應的集成處理。集成數據量200G。

4.結語

本文設計并構建了一種現代化的農業信息數據庫系統,希望能夠為我國農業經濟的發展提供一些助益。(作者單位:成都理工大學)

參考文獻:

[1]張偉,歐吉順,周楚新.利用數據挖掘技術建設農業智能綜合信息服務平臺[J].農業網絡信息.2011(08).

[2]夏斌,丁立,喬紅波,高瑞.中文農業信息垂直搜索引擎的設計與實現[J].河南農業大學學報.2010(06).

第8篇

一、成立數據小組

大型數據庫數據元素多,在設計上有必要成立專門的數據小組。由于數據庫設計者不一定是使用者,對系統設計中的數據元素不可能考慮周全,數據庫設計出來后,往往難以找到所需的庫表,因此數據小組最好由熟悉業務的項目骨干組成。

數據小組的職能并非是設計數據庫,而是通過需求分析,在參考其他相似系統的基礎上,提取系統的基本數據元素,擔負對數據庫的審核。審核內容包括審核新的數據庫元素是否完全、能否實現全部業務需求;對舊數據庫(如果存在舊系統)的分析及數據轉換;數據庫設計的審核、控制及必要調整。

二、設計原則

1.規范命名。所有的庫名、表名、域名必須遵循統一的命名規則,并進行必要說明,以方便設計、維護、查詢。

2.控制字段的引用。在設計時,可以選擇適當的數據庫設計管理工具,以方便開發人員的分布式設計和數據小組的集中審核管理。采用統一的命名規則,如果設計的字段已經存在,可直接引用;否則,應重新設計。

3.庫表重復控制。在設計過程中,如果發現大部分字段都已存在,開發人員應懷疑所設計的庫表是否已存在。通過對字段所在庫表及相應設計人員的查詢,可以確認庫表是否確實重復。

4.并發控制。設計中應進行并發控制,即對于同一個庫表,在同一時間只有一個人有控制權,其他人只能進行查詢。

5.必要的討論。數據庫設計完成后,數據小組應與相關人員進行討論,通過討論來熟悉數據庫,從而對設計中存在的問題進行控制或從中獲取數據庫設計的必要信息。

6.數據小組的審核。庫表的定版、修改最終都要通過數據小組的審核,以保證符合必要的要求。

7.頭文件處理。每次數據修改后,數據小組要對相應的頭文件進行修改(可由管理軟件自動完成),并通知相關的開發人員,以便進行相應的程序修改。

三、設計技巧

1.分類拆分數據量大的表。對于經常使用的表(如某些參數表或代碼對照表),由于其使用頻率很高,要盡量減少表中的記錄數量。例如,銀行的戶主賬表原來設計成一張表,雖然可以方便程序的設計與維護,但經過分析發現,由于數據量太大,會影響數據的迅速定位。如果將戶主賬表分別設計為活期戶主賬、定期戶主賬及對公戶主賬等,則可以大大提高查詢效率。

2.索引設計。對于大的數據庫表,合理的索引能夠提高整個數據庫的操作效率。在索引設計中,索引字段應挑選重復值較少的字段;在對建有復合索引的字段進行檢索時,應注意按照復合索引字段建立的順序進行。例如,如果對一個5萬多條記錄的流水表以日期和流水號為序建立復合索引,由于在該表中日期的重復值接近整個表的記錄數,用流水號進行查詢所用的時間接近3秒;而如果以流水號為索引字段建立索引進行相同的查詢,所用時間不到1秒。因此在大型數據庫設計中,只有進行合理的索引字段選擇,才能有效提高整個數據庫的操作效率。

3.數據操作的優化。在大型數據庫中,如何提高數據操作效率值得關注。例如,每在數據庫流水表中增加一筆業務,就必須從流水控制表中取出流水號,并將其流水號的數值加一。正常情況下,單筆操作的反應速度尚屬正常,但當用它進行批量業務處理時,速度會明顯減慢。經過分析發現,每次對流水控制表中的流水號數值加一時都要鎖定該表,而該表卻是整個系統操作的核心,有可能在操作時被其他進程鎖定,因而使整個事務操作速度變慢。對這一問題的解決的辦法是,根據批量業務的總筆數批量申請流水號,并對流水控制表進行一次更新,即可提高批量業務處理的速度。另一個例子是對插表的優化。對于大批量的業務處理,如果在插入數據庫表時用普通的Insert語句,速度會很慢。其原因在于,每次插表都要進行一次I/O操作,花費較長的時間。改進后,可以用Put語句等緩沖區形式等滿頁后再進行I/O操作,從而提高效率。對大的數據庫表進行刪除時,一般會直接用Delete語句,這個語句雖然可以進行小表操作,但對大表卻會因帶來大事務而導致刪除速度很慢甚至失敗。解決的方法是去掉事務,但更有效的辦法是先進行Drop操作再進行重建。

4.數據庫參數的調整。數據庫參數的調整是一個經驗不斷積累的過程,應由有經驗的系統管理員完成。以Informix數據庫為例,記錄鎖的數目太少會造成鎖表的失敗;邏輯日志的文件數目太少會造成插入大表失敗等,這些問題都應根據實際情況進行必要的調整。

5.必要的工具。在整個數據庫的開發與設計過程中,可以先開發一些小的應用工具,如自動生成庫表的頭文件、插入數據的初始化、數據插入的函數封裝、錯誤跟蹤或自動顯示等,以此提高數據庫的設計與開發效率。

6.避免長事務。對單個大表的刪除或插入操作會帶來大事務,解決的辦法是對參數進行調整,也可以在插入時對文件進行分割。對于一個由一系列小事務順序操作共同構成的長事務(如銀行交易系統的日終交易),可以由一系列操作完成整個事務,但其缺點是有可能因整個事務太大而使不能完成,或者,由于偶然的意外而使事務重做所需的時間太長。較好的解決方法是,把整個事務分解成幾個較小的事務,再由應用程序控制整個系統的流程。這樣,如果其中某個事務不成功,則只需重做該事務,因而既可節約時間,又可避免長事務。

第9篇

【關鍵詞】Hibernate;品種數據庫;對象

Abstract:Introduces the principle and characteristics of Hibernate technology, as well as the design and application of the seed database, display the advantages of Hibernate technology, the seed of object logic hypothesis.

1、引言

近年來,伴隨著生物信息技術的研究開展以及品種數字化管理需求的上升,品種數據庫的研究與管理越來越顯得重要,傳統的關系型數據庫對于表現相對獨立的品種表現尚可,但是對于表達具有遺傳、繼承、多態(生物多樣性)、突變等特性的種子特征則顯得無能為力。而最近在java技術領域異軍突起的hibernate技術則很完美的解決了這一問題,它的“面向對象”技術特征可以對種子品種的上述生物學特性進行表達,并可以進行抽象的數據邏輯操作。

2、hibernate技術的基本原理與品種的數字表達

2.1hibernate的基本原理

Hibernate是一個輕量級的對象映射框架,它主要技術特點就是把數據庫的內容對象化,使得每一條記錄都對應一個對象的實例,而數據一旦變成了對象的實例,就自然而然的具備了對象的特征,即繼承、多態、封裝等。對于種子數據的操作自然就變成了”面向對象”的操作。作為數據對象的種子,具有狀態,即對象的數據值。對象還有操作,就是對于對象本身數據值的操作。這樣科研人員就可以按照對自然事物的認知習慣來對數據進行操作,而不是按照機器的思維去研究自然事物。利用hibernate框架映射后臺數據處理類,把較為復雜的數據庫操作都封裝在DAO(data access object)中,由DAO提供一些數據訪問接口,那么程序員只要調用這些接口,就實現了原本需要復雜的Structured Query Language(結構化查詢語言)才能完成的功能。

2.2品種的數字表達

種子品種具有各種各樣的性狀,以水稻為例,以下為可用浮點數表示性狀參數,生育日數、活動積溫、株高、穗長等;以邏輯數據類型表示的是否抗倒伏特性;字符串類型的數據如品種名稱、配套栽培技術、母本等等。傳統的數據庫記錄方式只是將數據直接存儲到數據庫中供程序調用,如下所示:

(注:以上數據僅供舉例,具體數據可能有差異)

但是,經過hibernate框架的映射處理,這些數據將會被映射為數據對象,由靜態數據變成具有多種狀態屬性及操作的動態數據。

上述數據表格將會被映射成class rice。每個字段都將對應class中的屬性,每個相對應的屬性都有get和set方法來獲得或者修改對象的屬性值。這樣,水稻就可以抽象為一個class rice,這個抽象的class具有所有水稻的一般特性,那么任何一個水稻品種都是繼承于rice這個抽象類,并且變異或者進化出新的特性。

3、基于hibernate技術的品種數據庫系統設計

3.1三層結構設計

品種數據庫按照其功能劃分為表示層,業務邏輯層和數據層。表示層負責與用戶進行交互,負責將數據傳輸到業務邏輯層,并且將服務器處理完的數據回饋到用戶。業務邏輯層負責表達程序的主題思想,是核心部分,它負責將用戶數據處理后提交到數據層,或者將數據從數據庫中提出發送到表示層。數據層負責與數據庫打交道,所有與數據庫相關的操作都封裝在這一層,hibernate主要位于數據層與邏輯層之間,我們利用hibernate創建的DAO(數據訪問對象)就位于數據層,里面包含對品種數據庫的操作,例如增加、刪除、修改、查詢等等。

3.2品種數據庫應用的關鍵步驟

3.2.1創建hibernate的配置文件和映射文件

這兩個文件可以由集成開發環境自動生成,這里就簡單的說一下它們的作用,Hibernate配置文件主要負責與數據庫進行連接,其中包含數據庫所在服務器的ip端口,用戶名和密碼,以及應用的數據庫方言等等,一般以xml后綴形式存在。映射文件主要的作用就是將數據庫中的表與實體類相對應,例如水稻表就對應水稻的class,玉米表就對應玉米的class,該文件一般以hbm后綴存在。

3.2.2獲得數據工廠并存儲品種數據

sessionFactory=new AnnotationConfiguration().configure().buildSessionFactory();

public static SessionFactory getSessionFactory() {return sessionFactory;}

Session session=HibernateUtil.getSessionFactory().openSession();

tx=session.beginTransaction();

session.save(pinzhong);

mit();

}

3.2.3以dao(數據訪問對象)的方式提供數據接口

為了對三層結構中的業務邏輯層提供數據,Hibernate在品種數據訪問對象中提供創建和存儲接口、品種對象的修改和刪除接口、按照品種對象的唯一id查詢并獲得品種對象的接口、獲取全部品種對象的接口。這里面所說的品種對象,就是由在3.2.1中提到的映射文件生成的實體類對象、它們對應著數據庫中記載著的品種記錄,品種的id用來保證每條記錄的唯一性。

3.3設計針對品種遺傳特性的邏輯運算

由于數據經由hibernate映射成為了對象,對象具有屬性和操作,那么在class的設計中就可以設計加載雜交操作,還是以水稻為例,水稻a,b,c都繼承于水稻這個class,水稻c=水稻b.add(水稻a),也就是說水稻c的父本和母本分別是水稻b和水稻c,如果我們在數據庫中有父母本顯性基因和隱性基因的記錄,那么對這兩種基因進行“邏輯與運算”,我們就可以根據程序生成指定父母本雜交后代的大致估算結果。

4、結束語

將hibernate框架技術應用到種子品種數據庫中,對于由眾多參數構成的具有繼承變異等生物特性的品種數據,實例證明,具有一定的優勢和可行性。將“品種數據表”映射到“品種實體類”使其具有“類對象”功能,對于今后的種子品種研究工作是一個很好的鋪墊,具有一定的推廣意義。

參考文獻

[1]宋漢增,沈琳.利用Hibernate對象持久化服務簡化Java數據庫訪問[J].計算機應用,2003年12期

[2]朱慶偉,吳宇紅.一種對象/關系映射框架的分析和應用[J].電子科技,2004年01期

第10篇

【關鍵詞】在線考試系統 數據庫

1 引言

隨著信息化社會的迅速發展,在線考試已經逐漸在高校中流行起來,數據庫作為在線考試系統功能實現的基礎,做好數據庫的設計和應用十分必要。

2 需求分析

本系統作為一個通用的高校在線考試系統,可以滿足高校各科目的考試需求,因此在系統的分析設計階段需要充分考慮不同考試科目的公共特性,具備一定的可設置的彈性化設計空間。

本系統主要有教師、學生、監考人員和管理員四種用戶,其中教師主要完成試題庫管理、試卷管理等功能;學生主要完成在線考試功能;監考人員主要完成監控考場、啟動考試、回收試卷等功能;管理員主要完成對用戶、權限、考試課程和考試等管理功能。

3 概念設計

E-R圖是一種用于描述靜態數據結構的概念模型,提供表示實體類型、屬性和聯系的方法,用來描述現實世界的概念模型。把該系統的需求說明抽象為信息世界的概念模型,采用自底向上的方法,進行系統的概念設計,部分E-R圖1所示。

選擇題實體,包含編號、課程編號、題目、選項A、選項B、選項C、選項D、答案、章節、知識點、難易度等屬性;

一般題實體,包含編號、課程編號、題目、答案、章節、知識點、難易度等屬性;

試卷規則實體,包含規則編號、課程編號、單選題數量、多選題數量、填空題數量、判斷題數量、綜合題數量、單選題分值、多選題分值、填空題分值、判斷題分值、綜合題分值、總分和考試時間等屬性;

試卷實體,包含編號、學號、規則編號、題型、題目編號、題目序號、學生答案、是否正確、得分等屬性;

4 邏輯結構設計

邏輯結構設計就是把E-R圖中的實體、實體的屬性和實體之間的聯系轉化為數據庫支持的關系模式,在轉化過程中,注意命名問題、非原子屬性問題和聯系轉換問題,根據設計創建對應的數據表,具體如下:

管理員表(編號姓名,密碼);

教師表(編號,姓名,密碼,系部,聯系方式);

學生表(學號,姓名,密碼,年級,班級,聯系方式);

課程表(課程編號,課程名稱);

班級表(班級編號,班級名稱,系部,專業);

上課班級表(編號,課程編號,班級,上課教師編號,出卷教師編號,組卷規則編號);

考場表(考場編號,課程編號,班級,考場人數,考試開始時間,考試結束時間,監考老師編號,考場密碼,考場狀態);

單選題表(編號,課程編號,題目,選項A,選項B,選項C,選項D,答案,章節,知識點,難易度);

多選題表(編號,課程編號,題目,選項A,選項B,選項C,選項D,選項E,答案,章節,知識點,難易度);

填空題表(編號,課程編號,題目,答案,章節,知識點,難易度);

判斷題表(編號,課程編號,題目,答案,章節,知識點,難易度);

綜合題表(編號,課程編號,題目,答案,章節,知識點,難易度);

試卷規則表(規則編號,課程編號,單選題數量,多選題數量,填空題數量,判斷題數量,綜合題數量,單選題分值,多選題分值,填空題分值,判斷題分值,綜合題分值,總分,考試時間);

題型表(題型編號,題型名稱);

試卷表(編號,學號,規則編號,題型,題目編號,題目序號,學生答案,正確答案,是否正確,得分)。

5 數據庫實現

本考試系統選擇SQL Server2005作為數據庫開發平臺,為了充分利用數據庫優勢提高系統運行速度和效率,采用數據庫連接池技術,連接池負責分配、管理和釋放數據庫連接,它允許應用程序重復使用一個現有的數據庫連接,而不是再重新建立一個;釋放空閑時間超過最大空閑時間的數據庫連接來避免因為沒有釋放數據庫連接而引起的數據庫連接遺漏,能明顯提高對數據庫操作的性能。

系統部分功能如隨機組卷和客觀題自動評閱功能將在數據庫端實現。隨機組卷功能將通過用戶設置的題型、分值、章節、知識點和難易程度等要求通過存儲過程完成,而客觀題的自動評閱功能將通過在試卷表中建立觸發器來實現,部分代碼如下:

create TRIGGER judgeAsr ON paper

FOR UPDATE

AS

select @mid=id,@rid=rid,@qid=qid,@questionid=questionid,@typeid=typeid,@stuAsr=stuAsr from inserted

if(@typeid=1)

begin

select @rightAsr=answer from singleQuestions where [id]=@questionid;

select @weight=singleScore from rule where rid=@rid;

end

--多選、判斷、填空題的代碼類似,此處省略

if(@rightAsr=@stuAsr)

updatepaperManage set isRight='T',score=@weight where [id]=@mid

else

updatepaperManage set isRight='F',score=0 where [id]=@mid

6 小結

一個好的的在線考試系統離不開數據庫的支持,所以,如何根據系統的需求分析設計出合理的數據庫,對系統的后期實現有著十分重要的意義。

參考文獻

[1]鐘美鶯.在線考試系統數據庫設計應用研究[J].數據庫與信息管理,2015(21).

[2]劉洪江.在線考試系統的數據庫設計與實現[J].電腦知識與技術,2012(01).

[3]雷曉敏,網絡在線考試系統的數據庫設計[J].中小企業管理與科技,2011(11).

第11篇

關鍵詞:數據庫設計;概念模型;邏輯模型;物理結構

中圖分類號:G717 文獻標志碼:A 文章編號:1674-9324(2012)12-0244-02

數據庫結構的設計,重則會決定軟件系統的成敗,輕則也會直接影響系統運行速度及系統的使用率。在設計數據庫時,不但要考慮存取速度,還要考慮數據的冗余和一致性等問題。可以肯定的說:數據庫設計的好壞,對將來程序的設計和系統的最終功能實現都起著非常重要的作用。數據庫設計的第一步就是需求分析,即確定存儲哪些數據,建立哪些應用,常用的操作及對象有哪些。根據對系統的初步需求分析與調研,對學生管理系統的總體功能進行如下設計:信息管理模塊、考勤管理模塊、宿舍管理模塊、崗前實習管理模塊、有處分學生學習班管理模塊和系統管理模塊。

一、數據庫概念模型設計

根據前面對系統功能的細化分析,設計系統的數據流圖,最后得到系統全局實體—關系模型。全局實體—關系模型必須滿足所有的系統需要,還要恰當地展示一個一致的數據庫模型。

二、數據庫邏輯結構設計

實體—關系模型是對用戶需求的一種抽象的表達形式,它不能為任何一個具體的數據庫管理系統所支持,它是獨立于任何一種具體的數據模型的。為了能夠建立起最終的物理系統,接下來的任務是:將概念結構通過轉化規則轉化為本系統設計的數據結構,然后根據數據庫管理系統的特點,選定的數據庫管理系統支持下的數據模型,最后通過優化算法得到優化的數據模型。這些模式在功能性、完整性和一致性約束及數據庫的可擴充性等方面應滿足用戶的各種要求。設計數據庫邏輯結構有下面三個步驟:首先,將通過概念設計所得的實體—關系圖轉換為關系模型;就需要將實體、屬性和聯系轉換為相應的關系模型;其次,將轉換來的關系模型向特定DBMS支持下的數據模型轉換;最后,優化處理得到的關系模型。

(一)實體模型轉換為關系模型

鑒別數據庫中的數據元素、關系,以及定義所需的數據庫表和各個數據庫表中的項目這些初始工作之后,所做的細化的過程就是范化。任何數據庫的設計都需要滿足特殊的約定,這會使數據庫既簡潔又結構明晰,反之數據庫結果會非常混亂,所造成的直接后果是給數據的更新帶來麻煩,給數據庫帶來大量冗余信息,給編程人員帶來不便并造成不可避免的錯誤。

(二)實體—關系圖模式向關系模式的轉換

數據庫表中的每一個屬性都是不可以再分解的,這些屬性(字段)由基本類型構成,包括數字類型、日期時間類型和字符串類型。數據庫表部分設計如下:

①學生信息(學生編號,密碼,曾用名,籍貫,戶籍性質,照片,家庭住址,郵政編碼,家庭座機,學生手機,父親姓名,父親手機,母親姓名,母親手機)

②專業信息(班級名稱,校區,二級學院,所屬系,專業,入學日期,學制)

③班級信息(班級名稱,學生編號,班主任,學生姓名,性別,民族,身份證號,出生日期,政治面貌,類別,入學分數,是否住宿,輔導員,實習單位,處分標志,在校情況)

④考勤處分極限(處分名稱,處分級別,違紀數量)

⑤考勤信息(教師編號,學生編號,學年,學期,日期,節次,違紀內容,違紀數量)

……

另外還有課程管理庫表、教職工登錄庫表、崗前實習處分信息庫表、崗前實習處分極限庫表、崗前實習小結信息庫表、宿舍處分極限庫表、宿舍管理分配庫表、學生住宿分配庫表、宿舍違紀分值庫表、宿舍處分信息庫表、學生處分信息庫表、有處分學生學習班信息庫表,這里不再一一列舉。

(三)對關系模型進行優化處理

在以上的設計中,由于學生信息實體的信息量較大,而實際系統運行時,不是所有信息都需要,如果都調入內存會占用系統資源,而且安全性也會遭到威脅。通過以上分析,特把“學生信息”數據庫表分為兩個數據庫表,即“學生登錄”數據庫表和“學生信息”數據庫表,“學生登錄”數據庫表具體設計如下:

學生登錄(學生編號,密碼)

原“學生信息”表對應減少密碼項,避免發生數據冗余和數據的不一致性。

三、數據庫物理結構設計

由于數據庫的物理結構是與開發環境和選定的數據庫管理系統軟件產品有關的,因此數據庫的物理設計依賴具體的數據庫管理系統產品。數據庫物理設計步驟如下圖,后面會給出詳細的解釋。不論是對數據庫的物理結構的確定,還是對物理結構進行評價,必須滿足原始設計要求(需求分析),如果不滿足就需要退回重新設計或修改,直到設計出符合要求的具體數據庫。

(一)數據庫的物理結構設計

1.確定數據的存儲結構。在物理結構中,存儲記錄是數據的基本存取單位,存儲記錄結構包括記錄的組成、數據項的類型和長度以及邏輯記錄到存儲記錄的映射。下面舉兩個例子來簡要說明存取時間、空間和維護代價是決定存儲結構的主要因素:(1)假設現在需要查詢計算機技術系的所有學生名單,如果將同一個系的學生集中存放,則會顯著地減少訪問磁盤的次數。聚簇后不必重復存儲的聚簇碼值,可以減少部分存儲空間。(2)任課教師要按課程更新學生上課考勤信息,操作涉及學生和教師關系的連接操作,為提高效率,可把具有教師關系和學生關系在物理上聚簇在一起。根據以上設計思想,做如下部分設計:(1)學生基本信息、考勤處分極限、宿舍處分極限、崗前實習處分極限、教職工登錄、班級、課程管理、宿舍清單、宿舍的分配:在一定時間內變動不大,更新速度相對較慢,考慮到查找的方便性,進行聚簇存儲。(2)考勤信息、宿舍處分信息、崗前實習處分信息、學生處分信息:最經常的操作是查找、插入、刪除,為提高效率,考慮建立“B+樹”索引,則平均查找次數為“B+樹”的層數,故對數據庫設計到有索引的物理存儲。

2.存取路徑的設計。為了提高系統的性能,根據應用情況,如數據的異變部分和穩定部分、存取效率較高和較低等進行劃分,可以進行如下設計:(1)各種文件的存放位置設計;(2)為保證讀寫速度,考慮表和索引的存放;(3)設計大表存放形式,用以加快存取速度;(4)將不同學院的學生放在不同磁盤上,如果教師集中錄入考勤時,速度不會影響太大。

3.數據存放位置的設計。通過數據存放位置的規劃來提高系統的性能,為保證讀寫速度考慮表和索引的存放。如考勤信息、宿舍處分信息、學生處分信息表的索引。

4.系統配置的設計。數據庫管理系統的每個參數都有默認值,我們一般很少對默認初始值進行設置。但是根據不同系統的特點,這些默認參考值不一定都很恰當,需要我們根據最初的需求分析和實際的數據庫表設計,適當調整參數的初始值,讓我們設計的系統占用空間最小,系統運行速度最快。通常情況下,這些配置變量包括:同時打開的數據庫對象數量,使用的緩沖區長度、個數、時間片大小、數據庫的大小、裝填因子、鎖的數目,等等。

我們對這些參數值重新設置后,就能最大限度的保證系統運行效率。經過初步設計后,在系統真正投入運行或運行一段時間后,根據系統實際運行情況再做出調整,通過這種不斷地調整,使學生管理軟件系統的性能達到最優狀態。(1)登錄系統的極限數值設計。新生入學時,要求他們輸入自己的個人信息,設計要求最多可以有120人同時打開學生基本信息庫進行操作(通常打開3個機房共學生使用);平時同時使用的數據庫還有考勤庫、處分庫等,考慮到老師們中午或下午課程結束后,可能會統一進行考勤錄入,估算最多有200人同時打開學生考勤庫進行操作;有50人同時打開學生處分庫進行操作;對于其他數據庫,由于同時操作的可能性不會太大,設計成最多可以有100人同時打開相應數據庫進行操作;參考學院教職工和學生數。綜上所述,設置max_connecionts為300。(2)同時打開數據庫表個數的最初參數非常重要,如鎖的數目等。本文設計的學生管理系統目前共涉及數據庫表的個數為17,設計初期可以使用系統默認的數值。

(二)評價數據庫的物理結構

系統運行的效率、占用的空間、維護系統所花費的代價,都是我們在設計系統的初期需要考慮的事情。

四、結束語

一個數據庫應用系統的設計需要反復幾次,才能達到比較理想的狀態,這個反復的時間可能比最初設計系統的時間還要長,花費還要多,這也正是軟件系統設計的規律。所以,在最初的調研階段,要真正做好需求分析,不同階段做好不同的文檔設計,最后才可能得到性能高的數據庫。

參考文獻:

[1]伯樂.數據庫系統教程[M].北京:高等教育出版社,2003.

[2]羅宇.操作系統[M].北京:機械工業出版社,2005:319-352.

[3]薩師煊,王珊.數據庫系統概論[M].北京:高等教育出版社,2009.

第12篇

關鍵詞:灌區;數據庫;空間數據庫

中圖分類號:TP311.13 文獻標識碼:A文章編號:1007-9599 (2010) 07-0000-01

Shijin Irrigation-district Database Design and Construction

Zhang Yongzeng,Yang Ming

(Hebei Shijin Irrigation District,Administration Bureau,Shijiazhuang050051,China)

Abstract:Shijin Irrigation District as example,this paper study the design of the irrigation method and content of the database.While the establishment of the attribute database,spatial database been established,to provides a rich data base for the irrigation work,in large measure to improve work efficiency.

Keywords:Irrigation-district;Database;Spatial database

一、背景

石津灌區是國家大Ⅱ型灌區,位于河北省中南部,骨干工程控制面積4144平方公里,耕地面積435萬畝,設計灌溉面積250萬畝,受益范圍包括石家莊、邢臺、衡水3個市的14個縣市區,114個鄉,其水源工程為崗南、黃壁莊兩座聯合運營的大型水庫,興利庫容12.4億立方米。總干渠全長134公里,干渠8條,總長183公里。

石津灌區管理局成立于1949年,多年的信息記載模式大部分是紙質或電子表格,而灌區涉及的信息量大而繁雜,還包括渠道、管理機構、水工建筑物等空間數據,傳統的信息管理模式記錄分散,查詢及管理甚為不便,而空間數據只能通過紙質地圖查詢,降低了信息的提取利用效率,甚至影響了用水管理決策的制定和生成。因此,建立一個包括空間數據庫在內的完整的灌區數據庫是十分重要和必要的。

二、數據庫設計

(一)數據庫建設目標

1.建立標準、規范的數據編碼系統

對灌區各類基礎信息和空間信息進行編碼,必須依據國家、行業有關標準(如河流編碼、水庫編碼等)有關編碼規定,尤其要遵從《全國大型灌區基礎數據庫建設指南》。

2.設計完善的數據庫結構,對數據進行合理分類

在空間數據庫中重點建設灌區空間數據與灌區基礎數據之間的關系,按照監測點、全灌區兩種級別將專題數字矢量圖、專題數字柵格圖、試驗觀測表格、專題聲像資料、專題文本等五種類型進行分類結構設計,將灌區基礎數據庫和灌區專題數據庫進行結構設計和優化,根據應用需求再逐步補充、完善數據庫,以滿足信息查詢、匯報演示的要求。

3.數據庫建庫與數據導入

實施基礎數據庫的建庫,實施數據庫的物理結構建設和數據的導入。數據庫建庫包括空間數據庫建庫、多媒體數據庫建庫、實時監測數據建庫和灌區屬性數據庫的建庫,進而根據數據類型的不同,進行矢量地圖數據和屬性表格數據的分類入庫。

(二)空間數據庫設計

灌區空間基礎數據是指與灌區空間數據有關的基礎地圖類數據。石津灌區空間數據庫包括基礎地理數據庫和灌區專題空間數據兩個部分。

基礎地理數據庫:基礎地理空間數據是石津灌區所在區域的基本圖形或影像數據,可為整個灌區提供電子底圖。已收集到的數據包括:河北省石家莊市、衡水市、邢臺市的1:10萬地形圖、三市的行政區劃圖、水系分布圖、交通圖。圖上所有要素按照點、線、面要素進行分層,各層信息嚴格按照數據分類編碼體系規范化分類編碼,以.shp文件的形式進行存儲(灌區各GIS應用軟件都是基于ArcGIS Engine組件開發的)。

專題數據庫:根據灌區的需求,我們將專題數據庫分為灌區工情數據庫(水工建筑物數據庫)、水情信息數據庫、實時監測數據庫、水費征收數據庫。將這些點狀數據信息以shp文件的形式存儲。

1.工情數據庫:包含了灌區的閘門、渠道、倒虹吸、渡槽等各類水工建筑物,這些設施的數據是制定輸水、配水計劃的參考依據,也為管理人員更好的了解灌區情況提供了數據基礎。

2.水情信息數據庫:包含了灌區監測點的閘位、水位、雨情、墑情和地下水的非實時數據,可按時間或監測點統計分析水情信息的變化,預測用水量等重要信息。

3.實時監測數據庫:包含了灌區監測點的閘位、水位、雨情和墑情的實時數據,通過建立接口,讀取灌區已建設好的水情遙測系統監測到的最新數據,一般是半個小時更新一次。

4.水費征收數據庫:包含了灌區所轄范圍內各村的用水量及水費征收數據。能以村為單位查詢歷年用水量及水費收繳情況。

(三)屬性數據庫設計

灌區的屬性數據庫除了包含上述各空間數據所對應的屬性數據以外,還包括了灌區各管理機構的基本信息和社會、經濟基礎資料等。在屬性數據庫當中,需要把各要素的關鍵信息作為屬性字段存儲,多媒體數據分別以圖像、聲音和視頻等字段類型存儲,各專題要素的對象鏈接包括文本、聲音、照片、動畫等。與空間數據庫的鏈接通過關系數據表中的關鍵字段實現。

(四)元數據庫設計

元數據的英文名稱是“Metadata“,它是“關于數據的數據”,在地理空間信息中,用于描述地理數據集的內容、質量、空間參考、表示方式、管理方式以及數據集的其他特征,它是實現地理空間信息共享的核心標準之一。元數據可以用來組織和管理空間信息,并挖掘空間信息資源,通過它可以在廣域網或因特網上準確地識別、定位和訪問空間信息,幫助數據使用者查詢所需空間信息;還可以用來建立空間信息的數據目錄和數據交換中心,通過數據目錄和數據交換中心等提供的空間元數據內容,用戶可以共享空間信息、維護數據結果,以及對它們進行優化等等。

石津灌區的元數據庫按照《基礎地理信息數字產品元數據》(CH/T 1007-2001)規定進行設計,將空間元數據內容分兩個層次:第一層是目錄信息,主要用于對數據集信息進行宏觀描述,它適合在數字地球的國家級空間信息交換中心或區域以及全球范圍內管理和查詢空間信息時使用。第二層是詳細信息,用來詳細或全面描述地理空間信息的空間元數據標準內容,是數據集生產者在提供空間數據集時必須要提供的信息。

亚洲精品无码久久久久久久性色,淫荡人妻一区二区三区在线视频,精品一级片高清无码,国产一区中文字幕无码
亚洲免费精品一区二区三区 | 中国精品久久久久国产 | 亚洲国产午夜福利在线视频 | 免费人成国产网页在线观看 | 亚洲日本熟女视频 | 久久免费视频二区 |