何雪鋒
(四川信息職業(yè)技術(shù)學(xué)院,四川 廣元 628000)
基于Oracle的數(shù)據(jù)庫系統(tǒng)設(shè)計(jì)
何雪鋒
(四川信息職業(yè)技術(shù)學(xué)院,四川 廣元 628000)
Oracle是比較大型的數(shù)據(jù)庫管理系統(tǒng),應(yīng)用于很多大型企業(yè)。目前很多資料僅概述了數(shù)據(jù)庫的理論知識(shí),很少有根據(jù)具體案例解析數(shù)據(jù)庫系統(tǒng)的設(shè)計(jì)步驟。因此,以人脈管理系統(tǒng)為例,結(jié)合Oracle數(shù)據(jù)庫理論剖析數(shù)據(jù)庫系統(tǒng)的設(shè)計(jì)過程具有一定的意義。
Oracle;數(shù)據(jù)庫;系統(tǒng)設(shè)計(jì)
數(shù)據(jù)庫系統(tǒng)是信息系統(tǒng)的重要組成部分,快速正確地掌握數(shù)據(jù)庫系統(tǒng)的設(shè)計(jì)非常重要。目前有很多數(shù)據(jù)庫方面的教材和論文,而有通過案例演示數(shù)據(jù)庫設(shè)計(jì)步驟的卻很少,很多資料都僅限于提出數(shù)據(jù)庫設(shè)計(jì)的概念[1-2],但是沒有列出具體的實(shí)例。數(shù)據(jù)庫系統(tǒng)的設(shè)計(jì)步驟主要有:需求分析、概念結(jié)構(gòu)設(shè)計(jì)、邏輯結(jié)構(gòu)設(shè)計(jì)、物理結(jié)構(gòu)設(shè)計(jì)。需求分析主要是明確用戶的需求;概念結(jié)構(gòu)設(shè)計(jì)主要是根據(jù)需求設(shè)計(jì)書ER圖[3];邏輯結(jié)構(gòu)設(shè)計(jì)主要把ER模型轉(zhuǎn)變成關(guān)系模式;物理結(jié)構(gòu)設(shè)計(jì)則是根據(jù)具體的數(shù)據(jù)庫管理系統(tǒng)給出表的結(jié)構(gòu)信息。Oracle[4-5]是一個(gè)比較大型的數(shù)據(jù)庫管理系統(tǒng),與其他數(shù)據(jù)庫相比,有比較優(yōu)秀的用戶權(quán)限管理體系、表空間等。本文結(jié)合Oracle管理系統(tǒng),以人脈管理系統(tǒng)為例,清晰地展示數(shù)據(jù)庫設(shè)計(jì)的各個(gè)步驟。
需求分析階段的主要任務(wù)是理清系統(tǒng)的功能需求,確認(rèn)系統(tǒng)的邊界,反復(fù)與客戶溝通,通過功能圖、用例圖、數(shù)據(jù)流圖、協(xié)作圖、時(shí)序圖等方式簡(jiǎn)單準(zhǔn)確地表達(dá)客戶的需求,最終形成需求規(guī)格說明書。
在生活中,人脈管理系統(tǒng)主要用于管理不同類型的人脈,實(shí)現(xiàn)生日提醒、事務(wù)備忘等功能,由于系統(tǒng)需求相對(duì)簡(jiǎn)單,本文僅列出功能圖,如圖1所示。
圖1 人脈管理系統(tǒng)功能圖
人脈管理系統(tǒng)的結(jié)構(gòu)模塊及其功能如下所述。
(1)系統(tǒng)管理模塊:用于實(shí)現(xiàn)用戶的登錄、注冊(cè)。
(2)信息管理模塊:用于對(duì)基本信息的管理,如增刪改查等功能。
(3)信息搜索模塊:用于實(shí)現(xiàn)信息的查詢輸出。
(4)輔助功能模塊:用于提醒用戶親人以及朋友的生日日期和活動(dòng)備注等。
2.1 概念結(jié)構(gòu)設(shè)計(jì)
概念設(shè)計(jì)階段的任務(wù)是把需求階段的系統(tǒng)功能抽象成實(shí)體之間的關(guān)系圖,即ER圖。
根據(jù)人脈管理系統(tǒng)的需求分析,該系統(tǒng)主要涉及用戶、人物分類、備忘錄三個(gè)實(shí)體,從而得到ER圖,如圖2所示。
2.2 邏輯結(jié)構(gòu)設(shè)計(jì)
邏輯結(jié)構(gòu)設(shè)計(jì)階段的主要任務(wù)是把概念設(shè)計(jì)階段的ER圖轉(zhuǎn)換成關(guān)系。ER圖中的每個(gè)實(shí)體對(duì)應(yīng)一個(gè)關(guān)系,每個(gè)實(shí)體的屬性對(duì)應(yīng)關(guān)系的屬性。聯(lián)系則根據(jù)實(shí)際情況獨(dú)立成關(guān)系或合并到一段。
圖2 人脈管理系統(tǒng)ER圖
根據(jù)人脈管理系統(tǒng)ER圖,得到如下五個(gè)關(guān)系:
(1)管理員表(用戶ID,用戶姓名,用戶密碼);
(2)人物分類表(分類ID,分類名稱,分類編號(hào));
(3)用戶信息表(用戶ID,分類編號(hào),姓名,性別,電話,生日,地址,郵箱,職業(yè),工作單位,行業(yè),親密度);
(4)用戶備忘錄表(備忘ID,主題,描述);
(5)用戶備忘表(用戶ID,備忘ID,備忘時(shí)間)。
2.3 物理結(jié)構(gòu)設(shè)計(jì)
物理結(jié)構(gòu)設(shè)計(jì)的主要任務(wù)是把關(guān)系模式轉(zhuǎn)換成適應(yīng)具體數(shù)據(jù)庫管理系統(tǒng)的二維表。
根據(jù)Oracle的數(shù)據(jù)庫類型,我們采用varchar2類型存放字符串,number類型存放數(shù)字,date類型存放日期。五個(gè)關(guān)系表具體結(jié)構(gòu)見表1-表5。
表1 管理員表結(jié)構(gòu)
表2 人物分類表結(jié)構(gòu)
表3 用戶信息表
表4 用戶備忘錄表
表5 用戶備忘表
2.4 sql代碼實(shí)現(xiàn)
在使用Oracle創(chuàng)建數(shù)據(jù)庫之前,必須先創(chuàng)建表空間,相當(dāng)于給數(shù)據(jù)庫指定一個(gè)硬盤空間。然后在表空間里創(chuàng)建數(shù)據(jù)文件。數(shù)據(jù)文件用來存放具體數(shù)據(jù)。在操作數(shù)據(jù)庫之前,我們應(yīng)該創(chuàng)建用戶并授予相應(yīng)的操作權(quán)限。
本文結(jié)合Oracle數(shù)據(jù)庫管理系統(tǒng),實(shí)現(xiàn)了人脈管理的數(shù)據(jù)庫系統(tǒng)設(shè)計(jì)。嚴(yán)格按照數(shù)據(jù)庫設(shè)計(jì)的各個(gè)步驟,清晰地解剖了數(shù)據(jù)庫系統(tǒng)設(shè)計(jì)過程,為數(shù)據(jù)庫系統(tǒng)設(shè)計(jì)的學(xué)習(xí)提供了一定的參考。
圖3 查詢基本信息
圖4 查詢?nèi)嗣}類別
圖5 查詢備忘信息
[1]劉勇.數(shù)據(jù)庫設(shè)計(jì)技巧及設(shè)計(jì)規(guī)范[J].信息技術(shù)與信息化,2014(5):251-252.
[2]趙靜宇.數(shù)據(jù)庫設(shè)計(jì)規(guī)范化的理論研究與應(yīng)用[J].電子技術(shù)與軟件工程,2013(21):208.
[3]邵超,萬春紅.E-R圖的精細(xì)設(shè)計(jì)[J].計(jì)算機(jī)教育,2015 (8):78-81.
[4]徐卓.關(guān)于Oracle數(shù)據(jù)庫設(shè)計(jì)、開發(fā)、應(yīng)用的探討[J].鐵路計(jì)算機(jī)應(yīng)用,2014(9):59-62.
[5]劉曉華.Oracle數(shù)據(jù)庫在數(shù)據(jù)庫系統(tǒng)原理學(xué)習(xí)中的應(yīng)用[J].科技廣場(chǎng),2013(6):21-23.
Design of Database System based on Oracle
HE Xue-feng
(Sichuan Vocational College of Information Technology, Sichuan Guangyuan 628000,China)
Oracle is a relatively large database management system that is used in many large enterprises.At present,a lot of data only outlined the theory of the database system; there are few design steps according to the specific case analysis of the database system.Therefore,taking the personnel management system as an example,it is significant to analyze the design process of database system based on Oracle database theory.
oracle;database;design of system
TP31
A
1673-2022(2017)02-0050-04
2016-12-12
何雪鋒(1988-),男,四川廣元人,助教,碩士,主要研究方向?yàn)檐浖夹g(shù)。
河北軟件職業(yè)技術(shù)學(xué)院學(xué)報(bào)2017年2期