Director綜合技巧:Director 里面怎么樣控制讀取數(shù)據(jù)庫
2024-09-08 19:26:56
供稿:網(wǎng)友
director 中如何控制讀取數(shù)據(jù)庫
大家都知道, director/authorware 在多媒體的動(dòng)畫、美觀、易應(yīng)性方面相比 vb 、 vc++ 、 pb 、
vfp 、 delphi 等開發(fā)工具有巨大的優(yōu)勢(shì),但本身對(duì)數(shù)據(jù)庫的支持較弱。這里,筆者結(jié)合自己的開發(fā)實(shí)例對(duì) director/authorware 中數(shù)據(jù)庫應(yīng)用的各種技術(shù)做一個(gè)全面宏觀的介紹,至于具體的技術(shù)細(xì)節(jié)希望有機(jī)會(huì)以專題的形式詳加闡述。
方案一:外部文本文件的讀取分析
98 年用 authorware 開發(fā)《廣州大典》是就采用此方法,當(dāng)時(shí)有 5000 多條記錄,要求能用關(guān)鍵字查
詢;記得那時(shí)國內(nèi)外支持 authorware 查詢數(shù)據(jù)庫只有一個(gè) odbc.u32 ,并且只能返回 5 條記錄且易出錯(cuò)。沒法子,后來采用了取巧的辦法,用外部文本文件的形式保留記錄,在 authorware 中讀取并比較,當(dāng)然了,執(zhí)行效率極差,為此還特意加了一個(gè)冒熱氣的咖啡動(dòng)畫,以取望梅止渴之功效。
方案二:列表與文本成員的運(yùn)用
同方案一一樣 , 這其實(shí)也不是真正的數(shù)據(jù)庫查詢, director 比 authorware 在這方面要稍好一些,因?yàn)?director 的 cast 庫與 cast 成員(尤其是文本 cast )能夠分類保留大量信息,國內(nèi)外有一些技術(shù)文章專門談到利用列表與文本 cast 成員進(jìn)行查詢。
方案三:干脆直接調(diào)用數(shù)據(jù)庫查詢程序
我觀察到,在有些項(xiàng)目開發(fā)中,有些就干脆直接在 director 中調(diào)用一個(gè)用 vfp 或 pb 等寫的數(shù)據(jù)庫查詢程序,但是在整體感覺與調(diào)用速度、效率方面都不盡如人意。
方案四:用 dde 調(diào)用后臺(tái)運(yùn)行的數(shù)據(jù)庫查詢程序
這是在開發(fā)《廣州出口商品交易會(huì)會(huì)刊》時(shí)采用的方法。 dde 是 windows 早期支持的程序間進(jìn)行通
信的一種機(jī)制,后來被 ole , com 所取代,雖然還被支持,但已不再被提倡使用。當(dāng)時(shí)我們用 vfp 寫了一個(gè)后臺(tái)運(yùn)行的數(shù)據(jù)庫查詢程序,通過國外某一大學(xué)免費(fèi)開發(fā)的 dde 插件來傳遞查詢字符串以及返回字符串。但是存在傳遞的字符串有 32k 字節(jié)的限制以及占用系統(tǒng)資源較大的缺點(diǎn),并且同方案三一樣數(shù)據(jù)庫查詢操作是在另外的進(jìn)程(程序)中進(jìn)行。
方案五:采用 xml 技術(shù)
最近以來, xml 逐漸流行, director 在 7.0 版以后內(nèi)置了一個(gè) xmlparser 插件可以對(duì) xml 格式文件
(或字符串)進(jìn)行分析。我試過用 vb 寫了一個(gè) xml 生成器,即直接把數(shù)據(jù)庫轉(zhuǎn)成為 xml 文件再導(dǎo)入
到 director 中,再用 xmlparser 分析,我發(fā)現(xiàn)這種方法對(duì)英文能夠支持,但操作次數(shù)過多會(huì)不斷消耗內(nèi)存直到死機(jī);至于中文則根本不支持,不管我對(duì) xml 更換各種 encoding( 編碼 ) 方式也不行。 microsoft 的 xml notepad 也是一樣有此問題。
方案六:應(yīng)用第三方專業(yè)的數(shù)據(jù)庫操作 xtra
國外常見的能在 director 中操作數(shù)據(jù)庫的插件有 datrgrip,v12,daotable 等,都需要大筆美元注
冊(cè),購買比較麻煩。最近國內(nèi)有人也在開發(fā)這方面的插件,如筆者開發(fā)的 bitdbreader ,它能動(dòng)態(tài)添加的用戶 dsn ,再通過 odbc 來操作 ms access 數(shù)據(jù)庫 ( 很快將提供對(duì)各種格式數(shù)據(jù)庫的全面支持 ) ,非常方便好用。