999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于B/S的圖書館自建特色數據庫的研究與實現

2009-04-29 00:00:00唐海萍
現代情報 2009年2期

〔摘 要〕本文設計了一個基于B/S的圖書館自建特色數據庫,對其數據庫的構建和系統功能的設計進行了詳細的闡述。該系統可根據文獻的題名、作者、關鍵詞等,實現單條件檢索、多條件檢索、模糊檢索和跨庫檢索,提高專業文獻的檢索效率與信息資源利用率。

〔關鍵詞〕特色數據庫;B/S;檢索系統

〔中圖分類號〕G250.74 〔文獻標識碼〕C 〔文章編號〕1008-0821(2009)02-0109-03

Research and Implementation of the Self-building

Characterized Database Based on B/STang Haiping

(Library,Zhejiang Ocean University,Zhoushan 316000,China)

〔Abstract〕This paper designed the self-building characterized database based on B/S,then discussed the structure and system function of database in detail.This database could realize requirement of single condition,multi-condition,fuzzy retrieval and multi-database based on title,author,keywords etc.It improved the major literatures searching efficiency and use efficiency of information resource.

〔Key words〕characterized database;B/S;retrieval system

隨著計算機網絡的快速發展,讀者對圖書館的服務水平要求越來越高,他們不僅要獲取信息資源,而且要以最短的時間獲取,因此,圖書館的信息資源不能局限在現成的紙本和電子資源上,圖書館員可對文獻信息進行開發,把文獻中那些處于隱性、無序的信息,加以整理、排序,通過計算機組織形成數據庫[1]。20世紀90年代后期以來,我國211工程高校圖書館有64所建有263個不同類型的特色數據庫,占所有95所211工程高校圖書館的68.14%,約10%的專題庫形成標志性的成果[2]。這些具有地方特色與技術先進的專題文獻數據庫,為高校教學科研地方事業發展提供服務,并取得了一定的社會效益和經濟效益[3]。浙江海洋學院經過五十年的發展,在某些涉海類專業領域如:海水養殖、捕撈、造船等的研究處于國內領先水平,承擔過許多國家級、“863”、省部級等科研項目,校屬研究所獲國家科技進步獎8項,省、部級獎49項,積累了大量科研資料。學校海洋專家、學者的學術成果,在全國海洋界首屈一指,如:在最具海洋特色的漁業、船舶等專業領域,2000年以來共發表論文270多篇,出版學術論著22部,為建設涉海類專題數據庫提供豐富的文獻保障。同時,圖書館建有海洋文獻題錄數據,如“海洋類科研文獻數據庫”、“水產題錄數據庫”等。若能對這些涉海類特藏書目、論文進行收集、整理,形成專業數據庫,不僅能為全校師生查找資料、科研提供方便,也能為地方海洋經濟發展作出貢獻,使圖書館的文獻信息資源得到充分利用。

1 自建特色數據庫的結構與模型

1.1 自建特色數據庫的結構

1.2 自建特色數據庫的模型

系統采用易用的PHP語言,后臺則選用MYSQL數據庫,考慮到圖書館發展的需要與讀者檢索資料的方便性,采用面向對象方法來實現模型庫的設計,構建了基于B/S的圖書館自建特色數據庫模型圖。

自建特色數據庫具備以下功能:(1)管理功能。管理人員通過論文的編號管理數據庫,基本操作包括添加、刪除、修改、查詢和批量導入、導出數據庫,并可根據用戶易用和系統維護的需要,在數據庫維護模塊,適當調整數據庫的字段內容,字段長度等。(2)檢索功能。檢索功能是自建特色數據庫的主要功能模塊,用戶在檢索時,可根據題名、作者、作者單位、關鍵詞、摘要、刊名、全文等,確立單條件檢索、多條件檢索、模糊檢索,實現的難點是多條件檢索。本文將循環語句與數組相結合,根據多個條件自動生成符合檢索請求的SQL語句,實現多條件動態查詢。另外,結合浙江海洋學院圖書館的館藏特色與學校科研發展方向,自建特色數據庫還設置了魚類、藻類、貝類、海水養殖、捕撈等分類數據庫,在讀者使用時,還可實現跨庫檢索,大大提高檢索的查全率和查準率,在一定程度上,節省讀者的寶貴時間與精力。

2 自建特色數據庫功能的實現

2.1 自建特色數據庫管理功能的實現

用php語言,SQL語句編寫論文添加、修改函數addarticle,在添加、修改數據庫時,首先連接數據庫,然后按文章的id進行判斷,如果id的值不為空,即該id為已經存在的,則調用sql語句update更新一條信息到數據庫;如id的值為空,調用sql語句INSERT INTO插入一條信息到數據庫,添加、修改時需按題名、作者、作者單位、關鍵詞、摘要、刊名、全文等錄入、修改論文。同時,addarticle函數會根據論文題名、作者、關鍵詞等判斷是否有重復論文,保證文章的惟一性。

function addarticle(D|Sclassname,D|Stitle,D|S author,D|Scompany,D|S keywords,D|S abstract,D|S magazine,D|S cnid,D|S text,D|S treasury ){global D|Sdbhost,D|Sdbuser,D|Sdbpasswd,D|Sdbname,D|Stablearticle,D|Sid;

……./* function addarticle(填加、修改數據庫功能)*/

if(!D|Sid ==″″):/*if語句判斷id是否為空*/

D|Ssql=″UPDATE D|Stablearticle SET/*不為空,則調用update修改一條數據*/

classname=′D|Sclassname′,title=′D|Stitle′,author =′D|S author′,company=′D|Scompany′,keywords=′D|S keywords′,abstract=′D|S abstract′,magazine=′D|S magazine′,cnid =′D|S cnid′,text =′D|S text′,treasury =′D|S treasury′ WHERE id=D|Sid″;

else:/*若id值為空,調用insert into增加一條數據*/

D|Ssql=″INSERT INTO D|Stablearticle(classname,id,title,author,company,keywords,abstract,magazine,cnid,text,treasury)VALUES(′D|Sclassname′,′D|Stitle′,′D|S author′,′D|Scompany′,′D|S keywords′,′D|S abstract′,′D|S magazine′,′D|S cnid′,′D|S text′,′D|S treasury′)″;

endif;

mysqldbquery(D|Sdbname,D|Ssql);}

function delarticle(D|Sdelete){……./*通過連接數據庫使用Delarticle函數可實現某條論文信息的刪除操作*/

D|Ssql=″DELETE FROM D|Stablearticle WHERE id=D|Sdelete″;mysqldbquery(D|Sdbname,D|Ssql);}/* function delarticle(刪除功能)*/

2.2 自建特色數據庫檢索功能的實現

為方便用戶檢索文獻,檢索頁面向讀者,系統界面直觀,簡單易用,讀者不需要掌握專業的檢索語言和方法,便能實現檢索。讀者在進入海洋學院特色數據庫頁面后,可見頁面分成左右兩欄,在左欄設置了題名、作者、作者單位、關鍵詞、摘要、刊名、全文幾種檢索方式,用戶可選擇不同的檢索方式使用關鍵字進行文獻檢索。當用戶選擇其中一項或幾項輸入檢索條件并點擊“檢索”按鈕后,系統就會調用search.php文件,執行文獻檢索,并將查詢結果顯示在右欄。

在查詢程序中,首先連接服務器、數據庫,將用戶所選擇的某個數據庫名如:魚類、藻類、貝類等送入變量D|Stable,產生SQL語句SELECT*FROM′D|Stable′。將用戶選擇的檢索字段,如:題名、作者、關鍵詞等,讀入tablefield數組中,并統計共有幾個檢索字段存入num變量。初始化檢索關鍵詞變量key為空字符串,將用戶輸入的檢索關鍵字內容userkey數組數組元素的值與系統定義的tablefield數組內容進行匹配,將結果寫入key變量中。調用循環語句for,直到num的值為0。由于在多條件查詢中,同時滿足檢索條件的文獻才會被輸出,每個檢索關鍵詞之間的關系為“與”,因此,userkey的數組元素值之間以“”連接,寫入key后輸出,生成SQL語句SELECT*FROM D|Stable WHERE D|Skey ORDER BY id DESC,并將結果返回到result。利用while語句,循環調用showarticle函數,將結果按一定的寬度,以表格的形式將文獻的題名、作者、作者單位、關鍵詞、摘要、刊名等顯示在頁面上,如果讀者想瀏覽全文,可點擊題名鏈接。

以魚類庫中的題名、關鍵詞、刊名三項多條件檢索為例。在題名中輸入檢索詞:金槍魚,關鍵詞:漁場,刊名:《海洋漁業》,選擇精確匹配,點擊檢索。系統根據讀者的檢索請求,向search.php提交D|Stable為“fishtable”,產生SQL語句SELECT*FROM fishtable,將用戶選擇的3項檢索字段,題名、作者、刊名,讀入tablefield數組中,統計出num=3。調用循環語句for,將用戶輸入的檢索關鍵字內容userkey數組元素的值:金槍魚、漁場、海洋漁業,與系統定義的tablefield數組內容進行匹配,產生金槍魚漁場海洋漁業字符串存入key中,生成SQL語句SELECT*FROM fishtable WHERE title=″金槍魚″keywords=″漁場″magazine =″海洋漁業″ORDER BY id DESC,循環調用showarticle函數,通過表格的形式顯示查詢的結果,一目了然便于讀者查閱。

function showarticle(D|Sindex,D|Srow){

echo″<tr>″;

echo″<td width=″50″><div align=′center′>″.D|Sindex.″</div></td>″;

echo″<td width=″200″><div align=′center′>″.D|Srow[title].″</div></td>″;

echo″<td width=″80″><div align=′center′>″.D|Srow[author].″</div></td>″;

echo″<td width=″100″><div align=′center′>″.D|Srow[company].″</div></td>″;

echo″<td width=″100″><div align=′center′>″.D|Srow[keywords].″</div></td>″;

echo″<td width=″80″><div align=′center′>″.D|Srow[magazine].″</div></td>″;

echo″<td width=″50″><div align=′center′>″.D|Srow[cnid].″</div></td>″;

echo″<td width=″100″><div align=′center′>″.D|Srow[treasury].″</div></td>″;

echo″</tr>\″;}/*生成顯示查詢結果的表格*/

function search(D|Sdbhost,D|Sdbuser,D|Sdbpasswd,D|Sdbname,D|Stable,D|Suserkey){

D|Smysqlresource=mysqlpconnect(D|Sdbhost,D|Sdbuser,D|Sdbpasswd);/*連接數據庫*/

mysqlselectdb(′D|Sdbname′,D|Smysqlresource);

D|Sdataresource=mysqlquery(″SELECT*FROM′D|Stable′″);/*選中某一個或多個專業庫*/

D|Snum=mysqlnumfields(D|Sdataresource);/*統計共有幾個檢索字段存入num變量*/

for(D|Sj=0;D|Sj<D|Snum;D|Sj++){

D|Sfield=mysqlfetchfield(D|Sdataresource,D|Sj);/*返回表D|Sdbname的第二個字段信息*/

D|Stablefield[D|Sj]= D|Sfield[name];}

D|Skey=″″;/*初始化檢索關鍵詞變量key為空字符串*/

for(D|Sj=0;D|Sj<D|Snum;D|Sj++ ){

if(D|Suserkey[D|Sj]!=″″)/*判斷用戶輸入的第i個條件關鍵字是否為空,不為空則將其加入檢索條件D|Skey中*/

D|S key =D|S key.″ D|Stablefield[D|Si]=D|S userkey[D|Sj]″;}/*通過循環,將用戶輸入的檢索關鍵字內容userkey數組數組元素的值與系統定義的tablefield數組內容進行匹配,將結果寫入key變量中。*/

D|Ssql=″SELECT*FROM D|Stable WHERE D|Skey ORDER BY id DESC″;/*生成SQL語句*/

D|Sresult= mysqldbquery(D|Ssql);/*將結果返回到result*/

echo″<table border=0 cellspacing=0 cellpadding=3 width=550>\″;

D|Sindex=0;

While(D|Srow=mysqlarray(D|Sresult)){/*用while語句,遍歷顯示所有檢索條目,通過showarticle()顯示*/

Showarticle(D|Sindex,D|Srow);

D|Sindex++;}

echo″</table>\″;}

3 結束語

圖書館自建特色數據庫的建設,實現具有學科特點及圖書館特色的館藏資源的信息資源共享,使傳統文獻在網絡環境下重新體現其知識價值;鑒于特色數據庫是對專業數據進行深加工,可為讀者提供專業情報檢索技術,并增加檢索點,提高查全和查準率,使傳統意義上的讀者服務更加深化、全面;建設特色數據庫還可以使分散零亂的特色文獻資源得以系統化、有序化整理和深層次挖掘,將傳統文獻資源轉變為數字化資源,使其收藏、保存變得更加方便、安全。由此可見,自建特色數據庫有利于深層次地揭示,有利于使圖書館的各種文獻信息資源得到有效的利用,有利于圖書館提高信息資源服務水平和開展信息資源共享,使圖書館作為高等學校的文獻信息中心發揮了其應有的價值。

參考文獻

[1]宋欣,金松根,孫常麗.運用ASP和SQL技術創建及備份圖書館自建特色數據庫[J].牡丹江大學學報,2007,(5):165-167.

[2]黃曉斌,蒲筱哥.我國圖書館特色數據庫建設的現狀、問題與對策[J].情報科學,2007,(5):784-788.

[3]中國高等教育文獻保障系統專題特色數據庫子項目[DB/OL].http:∥www.calis.edu.cnPcalisnewPcalisindex.asp?fid=3class=5,2005-11-08.

主站蜘蛛池模板: 国产精品爆乳99久久| 国产91导航| 看国产一级毛片| 欧类av怡春院| 欧美国产日产一区二区| av午夜福利一片免费看| a毛片在线免费观看| 亚洲αv毛片| 自偷自拍三级全三级视频| 人人91人人澡人人妻人人爽 | 久久九九热视频| 精品少妇人妻无码久久| 精品视频一区在线观看| 欧美笫一页| 亚洲人成在线免费观看| 欧美另类图片视频无弹跳第一页| 92午夜福利影院一区二区三区| 国产成人狂喷潮在线观看2345| 国产成人8x视频一区二区| 国产办公室秘书无码精品| 国产日韩欧美精品区性色| 国产自在线播放| 国产一区二区三区精品欧美日韩| 欧美精品在线看| 国产精品自在线拍国产电影| 亚洲精品无码久久毛片波多野吉| 九九久久精品免费观看| 日韩最新中文字幕| 97国内精品久久久久不卡| 青青青国产免费线在| 亚洲中文字幕日产无码2021| 久久久受www免费人成| 男女男精品视频| 黄色一及毛片| 国产在线高清一级毛片| 色呦呦手机在线精品| 中文字幕亚洲综久久2021| 99久久人妻精品免费二区| 国产91丝袜在线播放动漫| 黄色福利在线| 国产91蝌蚪窝| 精品1区2区3区| 亚洲午夜综合网| 国产剧情国内精品原创| 日本免费福利视频| 五月婷婷精品| 久久亚洲国产最新网站| 亚洲中文字幕无码爆乳| 一级毛片在线直接观看| 亚洲天堂网在线观看视频| 久久亚洲天堂| 欧美不卡视频一区发布| 在线日本国产成人免费的| 狠狠久久综合伊人不卡| a色毛片免费视频| 日韩a级片视频| 久草视频一区| 中文成人无码国产亚洲| 国产成人精品一区二区秒拍1o| 蝴蝶伊人久久中文娱乐网| 国产乱人伦AV在线A| 91视频国产高清| 国产成人资源| 欧美日韩另类国产| 99久久精品美女高潮喷水| 人妻精品久久无码区| 亚洲首页在线观看| a级毛片一区二区免费视频| 成人日韩欧美| 日韩毛片免费| 97在线视频免费观看| 国产91丝袜在线观看| 亚洲中文字幕在线一区播放| 一级毛片基地| 高清欧美性猛交XXXX黑人猛交| 精品剧情v国产在线观看| 蜜臀AV在线播放| 免费在线看黄网址| 乱色熟女综合一区二区| 麻豆国产精品一二三在线观看| 亚洲AV无码乱码在线观看裸奔 | 欲色天天综合网|