主题:  Director/Authorware中的数据库应用

shikuangming

职务:普通成员
等级:1
金币:0.0
发贴:8
#12001/8/1 11:09:46
大家都知道,Director/Authorware在多媒体的动画、美观、易应性方面相比VB、VC++、PB、VFP、Delphi等开发工具有巨大的优势,但本身对数据库的支持较弱。这里,笔者结合自己的开发实例对Director/Authorware中数据库应用的各种技术做一个全面宏观的介绍,至于具体的技术细节希望有机会以专题的形式详加阐述。

方案一:外部文本文件的读取分析。
98年用Authorware开发《广州大典》是就采用此方法,当时有5000多条记录,要求能用关键字查询;记得那时国内外支持Authorware查询数据库只有一个ODBC.U32,并且只能返回5条记录且易出错。没法子,后来采用了取巧的办法,用外部文本文件的形式保留记录,在Authorware中读取并比较,当然了,执行效率极差,为此还特意加了一个冒热气的咖啡动画,以取望梅止渴之功效。

方案二:列表与文本成员的运用。
同方案一一样,这其实也不是真正的数据库查询,Director比Authorware在这方面要稍好一些,因为Director的Cast库与Cast成员(尤其是文本Cast)能够分类保留大量信息,国内外有一些技术文章专门谈到利用列表与文本Cast成员进行查询。

方案三:干脆直接调用数据库查询程序。
我观察到,在有些项目开发中,有些就干脆直接在Director中调用一个用VFP或PB等写的数据库查询程序,但是在整体感觉与调用速度、效率方面都不尽如人意。

方案四:用DDE调用后台运行的数据库查询程序。 
这是在开发《广州出口商品交易会会刊》时采用的方法。DDE是windows早期支持的程序间进行通信的一种机制,后来被OLE,COM所取代,虽然还被支持,但已不再被提倡使用。当时我们用VFP写了一个后台运行的数据库查询程序,通过国外某一大学免费开发的DDE插件来传递查询字符串以及返回字符串。但是存在传递的字符串有32K字节的限制以及占用系统资源较大的缺点,并且同方案三一样数据库查询操作是在另外的进程(程序)中进行。

方案五:采用Xml技术。
最近以来,xml逐渐流行,Director在7.0版以后内置了一个Xmlparser插件可以对Xml格式文件(或字符串)进行分析。我试过用VB写了一个Xml生成器,即直接把数据库转成为Xml文件再导入到Director中,再用Xmlparser分析,我发现这种方法对英文能够支持,但操作次数过多会不断消耗内存直到死机;至于中文则根本不支持,不管我对Xml更换各种encoding(编码)方式也不行。Microsoft的XML NOTEPAD也是一样有此问题。

方案六:应用第三方专业的数据库操作xtra
国外常见的能在Director中操作数据库的插件有Datrgrip,V12,DaoTable等,都需要大笔美元注册,购买比较麻烦。
最近国内有人也在开发这方面的插件,如笔者开发的bitDBreader,它能动态添加的用户DSN,再通过ODBC来操作MS ACCESS数据库(很快将提供对各种格式数据库的全面支持),非常方便好用。笔者提供了完整应用范例与使用说明,大家有兴趣的话可以到Macromedia中国网站www.macromediaChina.com的Director讨论区或直接发邮向shikuangming@hotmail.com索取范例说明。



koala_5d

职务:普通成员
等级:2
金币:1.0
发贴:189
#22001/8/1 13:59:40
楼上的兄弟。 这么好的东西可否share一下呢?
哈哈, 原来是个限制版 :) 版权所有!

编辑历史:[这消息被koala编辑过(编辑时间2001-08-01 15:19:43)]


shikuangming

职务:普通成员
等级:1
金币:0.0
发贴:8
#32001/8/2 10:23:03
需要DEMO的各位兄弟姐妹敬请最好发邮给我,以免漏掉,谢谢。



冰女孩

职务:普通成员
等级:1
金币:0.0
发贴:7
#42001/8/3 9:25:43
这么好的东东,能否让我享受享受?


欢迎登陆淘宝店http://shop35463582.taobao.com