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.

主站蜘蛛池模板: 亚洲swag精品自拍一区| 2021国产精品自拍| 国产在线观看91精品| 国产一区二区三区免费观看| 亚洲av成人无码网站在线观看| swag国产精品| 婷婷色在线视频| 精品国产香蕉伊思人在线| 伊人狠狠丁香婷婷综合色| 大学生久久香蕉国产线观看 | 国产99热| 久久久久免费看成人影片 | 欧美黄色网站在线看| 九色视频线上播放| 亚洲午夜天堂| 色综合色国产热无码一| 亚洲精品国产乱码不卡| 国产精鲁鲁网在线视频| 91国内外精品自在线播放| 亚洲欧洲日韩久久狠狠爱| 亚洲人免费视频| 国产呦精品一区二区三区下载| 高清大学生毛片一级| 成AV人片一区二区三区久久| 亚洲视频一区| 色偷偷一区| 婷婷丁香色| 精品国产99久久| 国产高清在线精品一区二区三区| 欧美精品亚洲二区| 怡春院欧美一区二区三区免费| 精品第一国产综合精品Aⅴ| 欧美日韩国产精品va| 亚洲av无码成人专区| 免费看av在线网站网址| 欧美激情,国产精品| 久久久久久高潮白浆| 一本大道视频精品人妻| 日本黄色不卡视频| 精品无码国产自产野外拍在线| 国产精品人成在线播放| 中文字幕乱码二三区免费| 久久人人爽人人爽人人片aV东京热 | 欧美日韩第二页| 久久国产黑丝袜视频| 亚洲国产清纯| 日韩av手机在线| 狠狠色狠狠色综合久久第一次| 日韩精品亚洲人旧成在线| 国产小视频在线高清播放| 亚洲成在人线av品善网好看| 国产性猛交XXXX免费看| 亚洲三级片在线看| 国产毛片一区| 99视频在线看| 久久综合婷婷| 一区二区理伦视频| 影音先锋亚洲无码| 午夜一级做a爰片久久毛片| 福利国产微拍广场一区视频在线 | 久久久久亚洲AV成人人电影软件| 中文字幕精品一区二区三区视频| 日韩高清中文字幕| 国产欧美视频在线| 日韩国产一区二区三区无码| 57pao国产成视频免费播放| 日韩少妇激情一区二区| 日韩一二三区视频精品| 免费不卡在线观看av| 免费人欧美成又黄又爽的视频| 国产精品所毛片视频| 国产精品色婷婷在线观看| 亚洲无码精彩视频在线观看| 精品国产91爱| 99成人在线观看| 免费无码在线观看| 小说区 亚洲 自拍 另类| 国产91精选在线观看| 亚洲专区一区二区在线观看| 亚洲AV永久无码精品古装片| 欧美精品成人一区二区在线观看| 久久中文字幕不卡一二区|