韓紅幫 張恒云 陳云霜
摘要:隨著現(xiàn)代信息技術(shù)的迅猛發(fā)展,如何高效地對(duì)大量的信息進(jìn)行處理與檢索,也給多媒體開發(fā)提出了一個(gè)新的技術(shù),數(shù)據(jù)庫技術(shù)為問題的解決提供了方案。該文從多媒體開發(fā)的角度簡要介紹了多媒體數(shù)據(jù)庫的發(fā)展現(xiàn)狀、類型,對(duì)多媒體數(shù)據(jù)庫的特點(diǎn)、幾個(gè)關(guān)鍵技術(shù)和數(shù)據(jù)庫技術(shù)原理進(jìn)行了闡述,并將媒體數(shù)據(jù)庫分為外部數(shù)據(jù)庫和內(nèi)部數(shù)據(jù)庫,重點(diǎn)對(duì)外部數(shù)據(jù)庫的實(shí)現(xiàn)方法做了詳細(xì)介紹。
關(guān)鍵詞:數(shù)據(jù)庫技術(shù);多媒體數(shù)據(jù)庫;關(guān)鍵技術(shù);ODBC;外部數(shù)據(jù)庫
中圖分類號(hào):TP37文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):1009-3044(2012)26-6360-03
On the Application of Data-base Technology in Multi-media Development
HAN Hong-bang1,ZHANG Heng-yun2,CHEN Yun-shuang1
(1.Modern Education Technology Center of Kunming University, Kunming 650214,China;2.Kunming University, Kunming 650214,China)
Abstract: With the fast development of modern information technology, multi-media research is focused on the index and pro? cessing of information with high efficiency. This article finds the data-base technology affording solution, thus briefly introduces the definition, classification and development of data-base. Demonstrating the principles, features, and essential technologies of data-base, the author of this article sorts it as exterior and interior, and furthermore, illustrates in detail the approaches to put into practice the exterior data-base.
Key words: data-base technology; multi-media data-base; essential technology; ODBC; exterior data-base
在當(dāng)今信息社會(huì),隨著多媒體技術(shù)和數(shù)據(jù)庫技術(shù)的結(jié)合,多媒體數(shù)據(jù)庫應(yīng)運(yùn)而生,特別是其在開發(fā)中的應(yīng)用,能夠使開發(fā)的產(chǎn)品有比較強(qiáng)的多媒體數(shù)據(jù)處理能力,比如對(duì)數(shù)據(jù)的存儲(chǔ)、查詢,同時(shí)還可以處理大量的外部信息。因此,在多媒體軟件開發(fā)中對(duì)數(shù)據(jù)庫技術(shù)的應(yīng)用研究具有重要意義。
1多媒體數(shù)據(jù)庫發(fā)展現(xiàn)狀與概述
隨著計(jì)算機(jī)的廣泛應(yīng)用,人們要求計(jì)算機(jī)能處理各種形式的數(shù)據(jù),如財(cái)務(wù)數(shù)據(jù)、文檔管理等。這些數(shù)據(jù)的信息量大,內(nèi)容復(fù)雜,而且要求能夠?qū)?shù)據(jù)進(jìn)行共享和保密,于是產(chǎn)生了數(shù)據(jù)庫系統(tǒng)。數(shù)據(jù)庫系統(tǒng)的一個(gè)重要特性是數(shù)據(jù)的獨(dú)立性,用戶對(duì)數(shù)據(jù)的任何操縱都是通過向數(shù)據(jù)庫管理系統(tǒng)發(fā)送請(qǐng)求實(shí)現(xiàn)的。
數(shù)據(jù)庫系統(tǒng)的性能與數(shù)據(jù)庫的數(shù)據(jù)模型直接相關(guān)。數(shù)據(jù)庫的數(shù)據(jù)模型先后經(jīng)歷了網(wǎng)狀模型、層次模型、關(guān)系模型和面向?qū)ο竽P偷入A段。關(guān)系模型因?yàn)橛型暾睦碚摶A(chǔ),取代了網(wǎng)狀模型和層次模型,目前關(guān)系數(shù)據(jù)庫在實(shí)際應(yīng)用中居于主導(dǎo)地位。
數(shù)據(jù)庫(databas,DB)是指長期儲(chǔ)存在計(jì)算機(jī)內(nèi)的,有組織的,可共享的數(shù)據(jù)的集合。數(shù)據(jù)庫中的數(shù)據(jù)按一定的數(shù)學(xué)模型組織、描述和存儲(chǔ),具有較小的冗余度,較高的數(shù)據(jù)獨(dú)立性和易擴(kuò)展性,并可為各種用戶共享。數(shù)據(jù)庫技術(shù)是指研究數(shù)據(jù)庫結(jié)構(gòu)、存儲(chǔ)、設(shè)計(jì)和使用的一門軟件科學(xué),是建立在海量信息處理基礎(chǔ)上的信息管理科學(xué)。
2多媒體數(shù)據(jù)類型
2.1數(shù)字字符數(shù)據(jù)
數(shù)字字符數(shù)據(jù)經(jīng)常由字符和數(shù)值構(gòu)成,具有非常規(guī)范的結(jié)構(gòu)化形式。完成對(duì)信息的抽象后,還要建立與實(shí)體之間的聯(lián)系,因此對(duì)這燈數(shù)據(jù)的存儲(chǔ)多采用結(jié)構(gòu)化的關(guān)系模型。
2.2文本數(shù)據(jù)
文本是最常見的媒體形式,也是多媒體數(shù)據(jù)類型中比較簡單且最重要的數(shù)據(jù)類型。各種書籍、文獻(xiàn)、檔案等都是主要由文本媒體構(gòu)成的,計(jì)算機(jī)對(duì)文本數(shù)據(jù)的處理在情報(bào)檢索中已得到了廣泛應(yīng)用。
2.3聲音數(shù)據(jù)
聲音能夠使一個(gè)對(duì)象或過程變得生動(dòng),而這種生動(dòng)又帶來了新的信息;同時(shí)聲音也是應(yīng)用中必須考慮的需要進(jìn)行有效管理的媒體。高質(zhì)量的聲音需要大容量的存儲(chǔ),在通常情況下,每分鐘聲道的聲音經(jīng)過數(shù)字化后需要上兆的存儲(chǔ)量。
2.4圖像數(shù)據(jù)
圖形和圖像按一定順序組成時(shí)間序列,就是動(dòng)畫和數(shù)字化視頻,這時(shí)數(shù)據(jù)的組成及內(nèi)容與時(shí)間就有了密切的關(guān)系
3多媒體數(shù)據(jù)庫的特點(diǎn)
3.1數(shù)據(jù)量大
無論是聲音信息還是圖像信,數(shù)據(jù)量都非常大且媒體之間量的差異十分明顯,而使數(shù)據(jù)在數(shù)據(jù)庫中的組織方式和存儲(chǔ)方法變得復(fù)雜。一幅較高分辨率的數(shù)字化彩色圖像約需1MB左右的存儲(chǔ)空間。
3.2數(shù)據(jù)類型復(fù)雜
除上述4類多媒體數(shù)據(jù),在具體實(shí)現(xiàn)時(shí),常根據(jù)系統(tǒng)定義、標(biāo)準(zhǔn)轉(zhuǎn)換而演變成幾十種媒體形式。
3.3數(shù)據(jù)操縱復(fù)雜
多媒體不僅改變了數(shù)據(jù)庫和應(yīng)用系統(tǒng)的界面,使其聲音、圖像、文字并茂,而且改變了數(shù)據(jù)庫的操縱形式,最重要的便是查詢機(jī)制和查詢方法。
4數(shù)據(jù)庫在多媒體開發(fā)中的關(guān)鍵技術(shù)
4.1數(shù)據(jù)模型技術(shù)
模型是對(duì)現(xiàn)實(shí)世界特征的模擬和抽像,數(shù)據(jù)模型是對(duì)現(xiàn)實(shí)世界數(shù)據(jù)特征的抽像。在多媒體開發(fā)中,其數(shù)據(jù)的表示、結(jié)構(gòu)和性質(zhì)比較復(fù)雜時(shí),就需要用抽像化的方法來建立數(shù)據(jù)模型。數(shù)據(jù)模型由數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)操作以及數(shù)據(jù)的約束條件(完整性規(guī)則的集合)組成。與傳統(tǒng)數(shù)據(jù)庫相同,數(shù)據(jù)模型是多媒體數(shù)據(jù)庫系統(tǒng)的核心,功能是將用戶與存儲(chǔ)設(shè)備管理及存儲(chǔ)結(jié)構(gòu)的細(xì)節(jié)相隔離,同時(shí)抽象出數(shù)據(jù)的靜態(tài)和動(dòng)態(tài)屬性,為建立多媒體數(shù)據(jù)的使用工具(如編輯器等)提供形式化的基礎(chǔ)。
多媒體數(shù)據(jù)模型要能支持媒體的獨(dú)立性,能實(shí)現(xiàn)諸多媒體的結(jié)合、擴(kuò)充以及互換,能使用戶最大限度地忽略各種媒體間的差別,從而實(shí)現(xiàn)對(duì)復(fù)雜數(shù)據(jù)對(duì)象的管理和應(yīng)用。
4.2用戶接口技術(shù)
多媒體數(shù)據(jù)庫的用戶接口技術(shù)主要包括多媒體數(shù)據(jù)的輸入/輸出、基于時(shí)間空間同步的多媒體表現(xiàn)以及多體信息的瀏覽。在多媒體管理系統(tǒng)中,應(yīng)提供兩類接口:可視化語言的接口和多媒體數(shù)據(jù)庫程序設(shè)計(jì)語言??梢暬Z言接口利用窗口管理和指示設(shè)備實(shí)現(xiàn),在可視模式下定義與表達(dá),查詢與瀏覽。因多媒體對(duì)象具有復(fù)合性的特點(diǎn),需采用面向?qū)ο蟮姆椒▉韺?shí)現(xiàn)多媒體庫管理系統(tǒng)。做到無縫集成面向?qū)ο蟮某绦蛟O(shè)計(jì)語言和數(shù)據(jù)庫語言,是實(shí)現(xiàn)多媒體數(shù)據(jù)庫系統(tǒng)的本身需求,也是應(yīng)用程序設(shè)計(jì)者的開發(fā)需要。
4.3多媒體檢索與查詢技術(shù)
檢索與查詢有基于關(guān)鍵詞和基于內(nèi)容兩類檢索?;陉P(guān)鍵詞的檢索與表示的數(shù)據(jù)類型和結(jié)構(gòu)有關(guān),不需對(duì)內(nèi)容做任何分析,常用于多媒體數(shù)據(jù)中復(fù)合媒體對(duì)象的檢索?;趦?nèi)容的檢索則根據(jù)媒體內(nèi)容語義進(jìn)行匹配,常用于對(duì)文本媒體內(nèi)容檢索查詢。在對(duì)圖像、聲音等媒體檢索和查詢時(shí),要借助模式識(shí)別進(jìn)行語義分析和特征匹配,相似性查詢,確定相似函數(shù)的特征因子,是減少檢索空間和結(jié)果空間的重要問題。
5多媒體開發(fā)中的數(shù)據(jù)庫技術(shù)原理
多媒體數(shù)據(jù)庫一般分為二種:外部和內(nèi)部數(shù)據(jù)庫。外部數(shù)據(jù)庫有強(qiáng)大的數(shù)據(jù)類型和表現(xiàn)能力,成熟的技術(shù)及應(yīng)用時(shí)間較長等特點(diǎn)。當(dāng)今,較多的多媒體開發(fā)軟件使用外部數(shù)據(jù)庫,如基于Web格式的Dreamweaver、Authorware和方正奧思等均都有效地使用外部數(shù)據(jù)庫。公用數(shù)據(jù)庫接口ODBC是外部數(shù)據(jù)庫與多媒體軟件的數(shù)據(jù)交換與傳輸?shù)闹虚g件。ODBC(Open Databases Connectivi ty),是微軟公司開放服務(wù)結(jié)構(gòu)(WOSA,Windows Open Services Architecture)中有關(guān)數(shù)據(jù)庫的一個(gè)組成部分,它建立了一組規(guī)范,并提供了一組對(duì)數(shù)據(jù)庫訪問的標(biāo)準(zhǔn)API(應(yīng)用程序編程接口)。多媒體軟件與數(shù)據(jù)庫進(jìn)行數(shù)據(jù)交換操作是通過ODBC數(shù)據(jù)驅(qū)動(dòng)程序管理器驅(qū)動(dòng)各類與其發(fā)生數(shù)據(jù)交換的數(shù)據(jù)庫。ODBC由ODBC驅(qū)動(dòng)程序管理器和各類數(shù)據(jù)庫驅(qū)動(dòng)程序組成,在使用數(shù)據(jù)庫開發(fā)多媒體課件前,必須建立與之相關(guān)的數(shù)據(jù)庫驅(qū)動(dòng),即所說的數(shù)據(jù)源,只有數(shù)據(jù)源在ODBC驅(qū)動(dòng)程序管理器中設(shè)置完成以后,在使用的時(shí)候才能有效地建立起數(shù)據(jù)庫連接,完成對(duì)數(shù)據(jù)的各種操作,在數(shù)據(jù)庫操作完畢后,要即時(shí)斷開數(shù)據(jù)庫連接,以確保系統(tǒng)資源能合理有效地使用。
內(nèi)建數(shù)據(jù)庫是多媒體開發(fā)軟件內(nèi)部集成的數(shù)據(jù)庫產(chǎn)品,多媒體軟件與數(shù)據(jù)庫直接進(jìn)行數(shù)據(jù)的交換操作,不需要使用中間件技術(shù),其優(yōu)點(diǎn)是讀取速度比較快,兼容性能也良好。多數(shù)用于開發(fā)本機(jī)多媒體數(shù)據(jù)庫產(chǎn)品,而ODBC中間件則是基于TCP/IP協(xié)議來實(shí)現(xiàn)的數(shù)據(jù)庫管理技術(shù),它可在網(wǎng)絡(luò)上實(shí)現(xiàn)遠(yuǎn)程數(shù)據(jù)的各種操作,其應(yīng)用范圍更廣泛。
6多媒體開發(fā)中的外部數(shù)據(jù)庫技術(shù)
目前,多媒體開發(fā)軟件首選的是使用外部數(shù)據(jù)庫接口技術(shù)。如Authorware ,使用符合ODBC標(biāo)準(zhǔn)的各類數(shù)據(jù)庫,系統(tǒng)提供了當(dāng)前流行的Access、Foxpro、SQLserver等數(shù)據(jù)庫接口,用戶可以用多種方法對(duì)數(shù)據(jù)庫進(jìn)行操作,本節(jié)將以Authorware為開發(fā)軟件,在課件中實(shí)現(xiàn)學(xué)生成績的管理為實(shí)例,討論利用ODBC接口對(duì)Access建立的數(shù)據(jù)庫進(jìn)行操作。
6.1建立外部數(shù)據(jù)庫
根據(jù)多媒體開發(fā)時(shí)的需求分析,按照數(shù)據(jù)庫設(shè)計(jì)原則規(guī)劃好數(shù)據(jù)庫,避免冗余數(shù)據(jù)的產(chǎn)生。利用Access設(shè)計(jì)數(shù)據(jù)庫,數(shù)據(jù)庫名為student。在數(shù)據(jù)庫中建立學(xué)生成績信息表score,字段有:學(xué)號(hào)、姓名、班級(jí)、課程名稱、成績和備注等。
6.2外部數(shù)據(jù)庫的連接配置
多媒體軟件要訪問外部數(shù)據(jù)庫是,首先要在ODBC管理器中創(chuàng)建一個(gè)數(shù)據(jù)源,讓服務(wù)器與數(shù)據(jù)庫建立聯(lián)系,使服務(wù)器成為數(shù)據(jù)庫與多媒體軟件的進(jìn)行數(shù)據(jù)交換的中間紐帶。如前所述,ODBC接口,中文名為:“開放式數(shù)據(jù)庫鏈接”接口,是Microsoft公司推出的實(shí)現(xiàn)異構(gòu)數(shù)據(jù)庫互連的標(biāo)準(zhǔn)。在Authorware多媒體開發(fā)軟件中也提供了一個(gè)支持標(biāo)準(zhǔn)的ODBC數(shù)據(jù)庫接口。對(duì)開發(fā)用戶屏蔽了不同數(shù)據(jù)庫之間的差異,可利用標(biāo)準(zhǔn)的SQL語言對(duì)各種不同的數(shù)據(jù)庫進(jìn)行操作。
Authorware配置ODBC的方法有兩種:手動(dòng)配置和自動(dòng)配置。手動(dòng)配置是利用Windows控制面板中的ODBC應(yīng)用程序來實(shí)現(xiàn)的,與其它開發(fā)軟件應(yīng)用程序所通用的一種配置方法。其方法為:打開“控制面板”,用鼠標(biāo)雙擊其中的“32位ODBC”圖標(biāo),打開OD BC數(shù)據(jù)源管理器;在“ODBC數(shù)據(jù)源管理器”對(duì)話框中單擊數(shù)據(jù)庫類型,然后單擊“添加”按鈕,彈出“創(chuàng)建新數(shù)據(jù)源”對(duì)話框;在“創(chuàng)建新數(shù)據(jù)源”對(duì)話框中選擇數(shù)據(jù)庫驅(qū)動(dòng)程序,單擊“完成”按鈕。在ODBC數(shù)據(jù)源安裝對(duì)話框中設(shè)置指定的ODBC數(shù)據(jù)源名稱、數(shù)據(jù)文件所在目錄與路徑,至此便生成可查詢ODBC數(shù)據(jù)源。
外部數(shù)據(jù)庫連接自動(dòng)配置則是調(diào)用外部函數(shù)tMsDSN.U32庫中的tMsRegister()函數(shù)實(shí)現(xiàn)數(shù)據(jù)源的直接連接,其函數(shù)的格式為:result:=tMsDBRegister(dbReqType,dbType,dbList),參數(shù)dbReqType的意義是對(duì)數(shù)據(jù)源的操作方式,其值有1,2,3,4,5,6,7,分別表示增加、配置、刪除ODBC數(shù)據(jù)源和增加、配置、刪除ODBC系統(tǒng)數(shù)據(jù)源及刪除默認(rèn)的ODBC數(shù)據(jù)源;參數(shù)dbType的意義是指定ODBC數(shù)據(jù)源使用的驅(qū)動(dòng)程序;dbList用來指定ODBC數(shù)據(jù)源的名稱。參數(shù)設(shè)置完畢后,運(yùn)行程序,如果運(yùn)行成功,result變量的返回值為1,否則為0。
ODBC配置代碼如下:
dbType:=”Microsoft Access Driver(*.mdb)”
/***指明數(shù)據(jù)源的類型,這里以Access數(shù)據(jù)庫為例***/
dbList:=”DSN=studentDSN;”
/***數(shù)據(jù)源文件名稱***/
dblist:=dbList^”Description=My ODBC DSN;”
/***數(shù)據(jù)源的說明部分***/
dbList:=dbList^”FIL=MS Access;”
/***數(shù)據(jù)庫類型***/
dbList:=dbList^”DBQ=”^FileLocation^”student.mdb;”
/***數(shù)據(jù)庫路徑,,與主程序在同一個(gè)目錄下***/
result:=tmsdbregister(4,dbtype,dblist)
/***創(chuàng)建一個(gè)新的系統(tǒng)數(shù)據(jù)源***/
6.3對(duì)數(shù)據(jù)庫進(jìn)行操作
Authorware若要對(duì)數(shù)據(jù)庫進(jìn)行操作,需要引入外部函數(shù)文件ODBC.U32(該文件在Authorware安裝目錄下),它提供了對(duì)數(shù)據(jù)庫操作的三個(gè)函數(shù):ODBCOpen、ODBCExecute和ODBCClose。
1) ODBCOpen()
格式:
ODBCHandle:=ODBCOpen(WindowHandle, Errorvar, database, User, Password)
該函數(shù)打開由參數(shù)Database指定的數(shù)據(jù)源,其中:
WindowHandle:程序的窗口句柄,直接輸入該參數(shù)即可。
ErrorVar:如果數(shù)據(jù)源不能正常打開,該參數(shù)存放返回的錯(cuò)誤信。
Database:即為數(shù)據(jù)庫的名字。
User:登錄到數(shù)據(jù)庫的合法使用者名。
Password:與登錄到數(shù)據(jù)庫的合法用戶對(duì)應(yīng)的密碼。
2) ODBCDate:=ODBCExecute(odbchandle,Sqlstring)
參數(shù)odbchandle為Authorware提供的ODBC句柄;Sqlstring為標(biāo)準(zhǔn)的SQL語言,用來對(duì)數(shù)據(jù)庫進(jìn)行添加、查詢、修改等操作。
3) ODBCClose(odbchandle)
參數(shù)參數(shù)odbchandle為Authorware提供的ODBC句柄。當(dāng)數(shù)據(jù)庫操作完畢后,一定要用ODBCClose(odbchandle)函數(shù)來關(guān)閉數(shù)據(jù)庫,否則其他的數(shù)據(jù)庫或者其他應(yīng)用程序都無法使用ODBC接口。
以上三個(gè)函數(shù)的聯(lián)合使用,可以完成對(duì)數(shù)據(jù)庫的各種操作。
7結(jié)束語
多媒體數(shù)據(jù)庫在多媒體軟件開發(fā)中的應(yīng)用,對(duì)擴(kuò)展多媒體軟件功能,提升多媒體產(chǎn)品的檔次,提高多媒體產(chǎn)品對(duì)信息的處理能力,都具有十分重要的作用,同時(shí)也為解決多媒體數(shù)據(jù)庫資源提供了強(qiáng)有力的保障。
參考文獻(xiàn):
[1]李曉,張曉輝,李祥勝. SQL Server 2000管理及應(yīng)用系統(tǒng)開發(fā)[M].北京:人民郵電出版社,2002.
[2]施伯樂,丁寶康,汪衛(wèi).數(shù)據(jù)庫系統(tǒng)教程[M].北京:高等教育出版社,2003.
[3]李玉斌.現(xiàn)代教育技術(shù)實(shí)用教程[M].北京:高等教育出版社, 2006.
[4]周恕義,王麗波.方正奧思6.0多媒體制作與教學(xué)應(yīng)用[M].北京:人民郵電出版社,2002.
[5]朱詩兵. Authorware數(shù)據(jù)庫編程[M].北京:清華大學(xué)出版社,2000.