閆曉美
(1.山西省地震局,山西 太原 030021;2.太原大陸裂谷動(dòng)力學(xué)國(guó)家野外科學(xué)觀測(cè)研究站,山西 太原 030025)
?
·技術(shù)交流·
地震科普信息數(shù)據(jù)庫(kù)的設(shè)計(jì)與實(shí)現(xiàn)
閆曉美1,2
(1.山西省地震局,山西 太原 030021;2.太原大陸裂谷動(dòng)力學(xué)國(guó)家野外科學(xué)觀測(cè)研究站,山西 太原 030025)
將PHP編程語言和My SQL數(shù)據(jù)庫(kù)相結(jié)合,基于web技術(shù),設(shè)計(jì)開發(fā)了地震科普信息數(shù)據(jù)庫(kù),實(shí)現(xiàn)利用網(wǎng)絡(luò)數(shù)據(jù)平臺(tái)采集地震科普類文字、圖片等信息,并對(duì)信息資源進(jìn)行合理分類、匯總,完成信息的統(tǒng)一管理和資源共享。
數(shù)據(jù)庫(kù);地震科普信息;資源管理
我國(guó)是地震災(zāi)害頻發(fā)地區(qū),防震減災(zāi)科普宣傳是一項(xiàng)不可缺少的基礎(chǔ)性工作,有效的科普宣傳,是廣泛普及地震科普知識(shí),提升社會(huì)公眾防震減災(zāi)意識(shí)和增強(qiáng)避險(xiǎn)技能的重要途徑。然而,在地震科普領(lǐng)域,地震知識(shí)、自救互救類信息資源,相對(duì)分散,且分類模糊,缺乏科學(xué)、有效的資源整合,更缺少系統(tǒng)化、規(guī)范化的地震科普信息數(shù)據(jù)庫(kù),使得地震宣傳教育工作缺少了應(yīng)有的資料儲(chǔ)備。因此,利用現(xiàn)代科技手段來收集和保存數(shù)據(jù),對(duì)于地震科普類信息資源的長(zhǎng)期保存具有重要的應(yīng)用價(jià)值和現(xiàn)實(shí)意義。
該研究主要是構(gòu)建地震科普信息數(shù)據(jù)庫(kù),將以前零散的地震科普類信息,有效地整理、歸納、存儲(chǔ),實(shí)現(xiàn)信息的科學(xué)管理和有效利用。在查閱大量文獻(xiàn)資料的基礎(chǔ)上,將數(shù)據(jù)庫(kù)管理方式引入地震科普信息資料的管理實(shí)踐中,以PHP技術(shù)和My SQL為開發(fā)平臺(tái),設(shè)計(jì)地震科普信息數(shù)據(jù)庫(kù)系統(tǒng)。設(shè)計(jì)時(shí),主要將采集到的地震科普類相關(guān)信息,分類加工、整理,以科學(xué)、合理的方式存儲(chǔ)到數(shù)據(jù)庫(kù)中,通過錄入、查詢、刪除等功能實(shí)現(xiàn)資源的管理,使管理更加高效、便捷。
該數(shù)據(jù)庫(kù)系統(tǒng)的總體結(jié)構(gòu)設(shè)計(jì),是在全面分析數(shù)據(jù)類型、資源分類、數(shù)據(jù)庫(kù)結(jié)構(gòu)的基礎(chǔ)上,為合理實(shí)現(xiàn)系統(tǒng)功能模塊而設(shè)計(jì)構(gòu)建的系統(tǒng)整體框架結(jié)構(gòu)。該階段是將前期收集、加工和整理分類后的地震科普信息,按照一定的數(shù)據(jù)模型進(jìn)行組織、描述和存儲(chǔ),同時(shí)基于數(shù)據(jù)間的關(guān)聯(lián)關(guān)系,結(jié)合Web技術(shù),構(gòu)造最優(yōu)的數(shù)據(jù)模式,實(shí)現(xiàn)數(shù)據(jù)資源的合理、高效、準(zhǔn)確存儲(chǔ),建立數(shù)據(jù)庫(kù)的應(yīng)用管理系統(tǒng)[1]。
1.1 數(shù)據(jù)庫(kù)系統(tǒng)整體架構(gòu)
基于地震科普宣傳及資源利用需求,采用結(jié)構(gòu)化系統(tǒng)分析法規(guī)劃設(shè)計(jì)地震科普信息數(shù)據(jù)庫(kù)。系統(tǒng)設(shè)計(jì)可實(shí)現(xiàn)信息的保存、增加、瀏覽、修改、刪除以及查詢等功能。研究重點(diǎn)從信息處理和業(yè)務(wù)流程上,將系統(tǒng)劃分為數(shù)據(jù)處理、瀏覽查詢、用戶管理、系統(tǒng)管理四大功能模塊。系統(tǒng)總體框架如圖1所示。
圖1 系統(tǒng)總體框架Fig.1 Overall framework of the system
1.2 功能模塊設(shè)計(jì)
該系統(tǒng)主要包括四個(gè)模塊:數(shù)據(jù)處理模塊,信息瀏覽、查詢模塊,用戶管理和系統(tǒng)管理模塊。
(1) 數(shù)據(jù)處理模塊。
數(shù)據(jù)庫(kù)內(nèi)添加、修改數(shù)據(jù)信息是數(shù)據(jù)庫(kù)需要實(shí)現(xiàn)的重要功能之一。在該系統(tǒng)中,為提高信息處理效率、方便信息添加和修改,為所有欄目設(shè)置統(tǒng)一的文章錄入格式,以及文章數(shù)據(jù)的修改、重置和刪除功能。文章錄入完成后,可對(duì)信息進(jìn)行二次編輯和設(shè)置。
(2) 信息的瀏覽、查詢模塊。
該模塊實(shí)現(xiàn)按照地震科普信息的種類進(jìn)行分類查詢、查看相關(guān)信息;通過界面提供的信息搜索文本框,查詢所需信息,支持2種檢索方式,即標(biāo)題檢索和智能模糊檢索。
(3) 用戶管理模塊。
用戶可按照不同權(quán)限級(jí)別登錄、操作數(shù)據(jù)庫(kù)。系統(tǒng)設(shè)置2種權(quán)限用戶,即普通用戶和高級(jí)用戶。普通用戶只能瀏覽、查詢數(shù)據(jù),不能執(zhí)行修改和刪除操作。系統(tǒng)高級(jí)管理員可添加、刪除、更改用戶信息,以及設(shè)置用戶權(quán)限等。
(4) 系統(tǒng)管理模塊。
該模塊具有對(duì)數(shù)據(jù)表的創(chuàng)建、刪除、合并、更名,以及數(shù)據(jù)庫(kù)的導(dǎo)入、導(dǎo)出、備份和數(shù)據(jù)安全等管理功能?;诤笈_(tái)數(shù)據(jù)庫(kù)的信息資源管理,主要包括日志管理、事務(wù)管理、數(shù)據(jù)庫(kù)備份與恢復(fù)等功能[2]。系統(tǒng)會(huì)定期對(duì)后臺(tái)數(shù)據(jù)庫(kù)的數(shù)據(jù)進(jìn)行備份。
研究中,利用PHP語言,結(jié)合My SQL數(shù)據(jù)庫(kù)技術(shù),開發(fā)地震科普信息數(shù)據(jù)庫(kù)系統(tǒng),實(shí)現(xiàn)信息資源的科學(xué)管理。PHP(Hypertext Preprocessor)是專門為Web環(huán)境設(shè)計(jì)的服務(wù)器端嵌入式腳本語言,是目前使用最廣泛的動(dòng)態(tài)網(wǎng)頁(yè)編程語言之一[3]。該系統(tǒng)基于PHP的動(dòng)態(tài)交互式Web數(shù)據(jù)庫(kù),將客戶機(jī)/服務(wù)器模式的數(shù)據(jù)庫(kù)結(jié)構(gòu)與web技術(shù)緊密結(jié)合起來,形成具有最前端瀏覽器、WebServer、后臺(tái)數(shù)據(jù)庫(kù)3層Web結(jié)構(gòu)的瀏覽器/服務(wù)器模式的數(shù)據(jù)庫(kù)體系。使用PHP訪問數(shù)據(jù)庫(kù)時(shí),需建立數(shù)據(jù)庫(kù)鏈接,然后使用mysql_select_db()函數(shù)來指定一個(gè)數(shù)據(jù)庫(kù)。
2.1 數(shù)據(jù)庫(kù)及表的創(chuàng)建
在My SQL系統(tǒng)環(huán)境下,創(chuàng)建名為qlyl的數(shù)據(jù)庫(kù)。表(Table)是創(chuàng)建其他數(shù)據(jù)庫(kù)的基礎(chǔ),用來存儲(chǔ)實(shí)際數(shù)據(jù),是整個(gè)數(shù)據(jù)庫(kù)系統(tǒng)的數(shù)據(jù)源[4]。研究中,根據(jù)不同的數(shù)據(jù)類型,建立相應(yīng)的存儲(chǔ)數(shù)據(jù)表。庫(kù)中新建地震科普、監(jiān)測(cè)預(yù)報(bào)、抗震設(shè)防、應(yīng)急救援、地震科普?qǐng)D展、視頻展播等11項(xiàng)內(nèi)容的數(shù)據(jù)表,以及數(shù)據(jù)庫(kù)整體結(jié)構(gòu)的系統(tǒng)配置表等(見圖2)。
圖2 qlyl數(shù)據(jù)庫(kù)Fig.2 qlyl database
系統(tǒng)中,創(chuàng)建該數(shù)據(jù)庫(kù)的命令為:MySQL>CREATE DATABASE qlyl。其中,地震科普信息數(shù)據(jù)庫(kù)表(KPXX表)結(jié)構(gòu)如第37頁(yè)表1所示。
2.2 系統(tǒng)功能實(shí)現(xiàn)
2.2.1 數(shù)據(jù)處理功能及展示
在該系統(tǒng)中,文章錄入界面,可實(shí)現(xiàn)文字編輯、圖片設(shè)置、多媒體導(dǎo)入等功能。在信息錄入時(shí),先選定欄目類別,再進(jìn)行信息編輯,可根據(jù)文章需求設(shè)置不同屬性,包括關(guān)鍵字、內(nèi)容摘要、文章來源、日期、縮略圖等。在編輯文章時(shí),可對(duì)輸入的文檔進(jìn)行字體、大小、下劃線、排序等word格式常見的屬性編輯,操作方式快捷簡(jiǎn)便;其次,可實(shí)現(xiàn)插入表格、上傳圖片和Flash視頻動(dòng)畫等功能。文章錄入完成后,設(shè)置“編輯”和“刪除”按鈕,支持信息內(nèi)容的二次編輯和修改(見圖3)。
表1 地震科普信息的字段及其類型
圖3 數(shù)據(jù)信息編輯界面Fig.3 Data editing interface
2.2.2 信息的瀏覽、查詢功能及展示
(1) 系統(tǒng)首頁(yè)。
系統(tǒng)主界面是信息瀏覽的主要平臺(tái),為達(dá)到頁(yè)面簡(jiǎn)潔美觀的效果,在設(shè)計(jì)頁(yè)面時(shí)選擇淡綠色圖案作為背景底色。界面包含分類導(dǎo)航、智能查詢、文章標(biāo)題列表、系統(tǒng)名稱、顯示窗口、圖片列表等主要功能。主要以導(dǎo)航條、圖片和標(biāo)題列表的方式展示信息(見第38頁(yè)圖4)。
(2) 系統(tǒng)二級(jí)子欄目。
地震科普信息數(shù)據(jù)庫(kù)系統(tǒng)共設(shè)置六大類欄目信息,包括:地震科普、防震知識(shí)、抗震設(shè)防、監(jiān)測(cè)預(yù)報(bào)、應(yīng)急救援、法規(guī)標(biāo)準(zhǔn)。為進(jìn)一步細(xì)化信息類別,在每個(gè)主欄目下,又劃分出多個(gè)子欄目,實(shí)現(xiàn)分類存儲(chǔ)。除此之外,為豐富欄目種類、充實(shí)信息內(nèi)容,主界面又增設(shè)地震百科、科普文苑、視頻點(diǎn)播三大特色欄目(見第38頁(yè)圖5)。
(3) 查詢功能。
用戶可按照導(dǎo)航欄目及下拉菜單列表,分類瀏覽和查找信息資源;可按照信息資源的標(biāo)題或文章關(guān)鍵字等進(jìn)行查詢(見第38頁(yè)圖6)。
2.2.3 用戶管理功能及展示
(1) 登錄管理。
為確保信息安全,系統(tǒng)專門設(shè)置登錄管理界面,當(dāng)需要修改信息時(shí),必須輸入用戶名和密碼,登陸后進(jìn)行操作。根據(jù)不同權(quán)限,將用戶分為普通用戶和系統(tǒng)管理員。其中,系統(tǒng)管理員負(fù)責(zé)信息的錄入、修改,還可進(jìn)行權(quán)限設(shè)置、用戶刪除、數(shù)據(jù)表修改等。
圖4 系統(tǒng)主界面Fig.4 System main interface
圖5 地震科普二級(jí)子欄目顯示界面Fig.5 Earthquake science popularization secondary subtopic display interface
圖6 主界面查詢功能示意圖Fig.6 Schematic diagram of the main interface search function
登錄界面要求用戶必須同時(shí)輸入正確的用戶名、密碼、驗(yàn)證碼,方可進(jìn)入系統(tǒng)。
(2) 用戶管理。
該功能可以設(shè)定用戶的登錄ID號(hào)、級(jí)別、名稱等,同時(shí)實(shí)現(xiàn)增加管理員、用戶組管理等高級(jí)功能。
圖7 用戶管理界面Fig.7 User management interface
2.2.4 系統(tǒng)管理功能及展示
該模塊可實(shí)現(xiàn)數(shù)據(jù)還原、SQL命令執(zhí)行等功能,可對(duì)數(shù)據(jù)表結(jié)構(gòu)進(jìn)行優(yōu)化和修復(fù)等(見圖8),滿足數(shù)據(jù)庫(kù)管理的基本操作。
圖8 數(shù)據(jù)庫(kù)系統(tǒng)管理界面Fig.8 Database system management interface
該系統(tǒng)采用PHP編程語言設(shè)計(jì)開發(fā)出信息展示界面和用戶使用界面,使用ADO技術(shù)實(shí)現(xiàn)對(duì)SQL Server數(shù)據(jù)庫(kù)的存取,其特點(diǎn)是占用系統(tǒng)資源少,運(yùn)行效率高,可實(shí)現(xiàn)地震科普類數(shù)據(jù)的科學(xué)管理和高效維護(hù)。
地震科普信息數(shù)據(jù)庫(kù)的構(gòu)建,不僅實(shí)現(xiàn)地震科普類知識(shí)的資源共享,提高工作效率,還對(duì)現(xiàn)有分散的資料進(jìn)行了有效整合,并通過網(wǎng)絡(luò)平臺(tái)進(jìn)行全面、系統(tǒng)、分類的展示。利用數(shù)據(jù)庫(kù)對(duì)地震科普資源的有效管理,可避免資源的浪費(fèi)和冗余。同時(shí)為社會(huì)公眾學(xué)習(xí)地震科普知識(shí)提供平臺(tái),為宣傳教育工作提供科學(xué)素材。
研究中采用的各種技術(shù)手段和技術(shù)框架,如PHP開發(fā)語言,在現(xiàn)階段是較為科學(xué)的開發(fā)語言,但隨著信息技術(shù)的快速發(fā)展,該技術(shù)手段對(duì)信息數(shù)據(jù)庫(kù)的進(jìn)一步開發(fā)和完善具有一定的局限性,難以滿足使用者更高層次的需求。因此,需不斷引進(jìn)新技術(shù),借助新的開發(fā)語言,完善地震科普信息數(shù)據(jù)庫(kù)。
[1] 林國(guó)良.基于烈度點(diǎn)的中國(guó)歷史地震資料數(shù)據(jù)庫(kù)系統(tǒng)試編制[J].地震學(xué)報(bào),2012,34(1):118-124.
[2] 楊 坤.三峽金沙江流域地理信息數(shù)據(jù)庫(kù)系統(tǒng)設(shè)計(jì)[J].人民長(zhǎng)江,2011,42(z2):77-79.
[3] 馮燕奎.PHP4.0與My SQL動(dòng)態(tài)網(wǎng)絡(luò)編程[M].北京:清華大學(xué)出版,2002:5-21.
[4] 冒 進(jìn).基于Access的汶川地震水庫(kù)土石壩震害數(shù)據(jù)庫(kù)系統(tǒng)的構(gòu)建[J].地震工程與工程震動(dòng),2013,33(5):57-66.
The design and implementation of Popular Earthquake Science Information Database
YAN Xiao-mei1,2
(1.Earthquake Administration of Shanxi Province, Taiyuan Shanxi 030021, China;2.Stake Key Observatory of Shanxi Rift System, Taiyuan Shanxi 030025, China)
Combining PHP programming language and SQL My database, the popular earthquake science information database is designed and developed based on Web technology. Using the network data platform to collect the information of popular science text, picture are realized, and the unified management of information and resource sharing are realized through the reasonable classification and summary of the information resources.
Database; Popular earthquake science information; Resource management
1000-6265(2016)04-0035-05
2016-06-09
閆曉美(1984— ),女,山西省臨汾市人。2012年畢業(yè)于山西大學(xué),碩士研究生,工程師。
P315.99
A