图像声音数字视频是多媒体的基本要素目前多媒体数据库正得到是益广泛的应用例如桂林市开通的交互式有线电视实时点歌系统即人们可以用电话机的按键点歌并且同时在电视上看到自己正在操纵的菜单选中歌曲后电视立即自动播放MTV不需旁人帮助这是网络多媒体数据库的具体应用 用PowerBuilder开发应用程序时您完全可以把多媒体数据集成到应用程序中使您的应用程序具备多媒体录制查询播放等众多功能显然多媒体将进一步提高应用程序的层次并且给用户一种身临其境的感觉
怎样用PowerBuilder创建并展示多媒体数据库呢?它可分为两部分
怎样将图象声音动画存入数据库
查询系统的制作
下面以PowerBuilder和SQL Anywhere为例让我们快速制作一个简单的查询系统制作婚姻介绍系统查询到符合条件的人后显示该人的人事档案卡上有个人的照片要求双击个人照片能调用Acdsee展示该照片(顾客能任意放大缩小欣赏照片)或者双击该个人档案某处放映一段该个人档案的个人生活录相个人喜欢的音乐等
一怎样将图象声音动画存入数据库
首先要有一个包含Blob数据类型的表然后利用Bb数据窗口的OLE database Blob(OLE数据库二进制大对象)可以轻易地把图片等多媒体数据存入数据库或展示在屏幕上
步骤如下
建立一个表aaa内含两个字段记录号和相片一个字段取名为ID另一个字段名为Pic类型分别为char和Long binaryID为主键具体操作步骤为进入Database画笔来建立此表ID字段取type 为char不许为空即Null为NoPic字段type为Long binary可为空即Null为Yes(重要)将英文标题头改成中文即将id字段的Header内的id改为记录号Label的内容改为记录号同理将pic字段的改为相片和相片按Close图标保存的文件名填aaa按Table Properties图标按Primary key并点选ID为主键按Close图标关闭Database画笔
注意在这一步骤里不要输入数据而要在后面的数据窗口里按预览图标输入数据
Pic字段的数据类型即所谓Blob类型其数据类型在不同的DBMS中有一定的差别在SQL Anywhere 中是Long binary在SQL Server中是Image
建立一个新的应用程序具体操作步骤为按Application图标再按New图标文件名填test按保存Application填test按OK出现一Would you like……的对话框问是否要应用程序模板按是为简化制作步骤要模板
建立数据窗口并准备输入数据步骤为按DataWindow图标在Select datawindow对话框中选New在New Datawindow对话框中选SQL Slect和Freeform即SQL 选择的数据源自由格式的风格按OK在Select talbe对话框中选中aaa表按Open点选ID列使ID出现在Select list的右边在窗口下方按Where按钮按Colume并在Cloume的下拉条中选中aaaid在Valua的一栏中填入 :temp注意这里的temp前面有一冒号按窗口上方的Desion菜单选Retriveal Arguments在Name一栏填temp注意这里的temp前面没有冒号type一栏选String(注意)按OK
规定SQL语句可以嵌入到PowerScript语言当中只不过每一个SQL语句必须以分号结尾而且在SQL语句中如果要引用PowerScript变量则必须对这些变量赋予一个前缀冒号而PowerScript语句的变量不要加冒号注意区分
用数据窗口的预览方式输入数据具体操作步骤为按Desion菜单选Data Source使Data Source前面不打钩从Objects菜单中选择OLE Database Blob项然后在设计窗口中适当位置点鼠标左键此时出现Database Blob object对话框逐渐填写对话窗:
ClientClass填入DataWindow可选
ClientName填入当前DataWindow的名字可选
Table选择aaa表
Large Binary/Text Columns选择pic字段
KeyClause选id=:id用于构造where子句即where id=:id用于定位相位记录
File template浏览选择并填入一个bmp文件可不填
OLE Class通过下拉菜单选择Pbrush画笔程序
Client Name Expression填入某一字符串表达式当OLEServer运行时显示在其标题处如填写入id+bmp按OK键
单击Positions标签选中Resizable单击General标签在Border列表框中选择Resize如此选择这两个属性后程序运行时用户能够通过拖拽改变图片的大小单击OK关闭对话框
此时PB关闭该对话窗并回到DataWindow的设计窗口OLE字段以一小方框的形式显示出来
单击Preview预览图标在跳出的对话框中给temp的值填点Insert Row 图标在表中添加一行填入id后双击方框打开画图程序这时可以通过绘制复制等手段制作图片制作好后单击文件菜单中的退出并返回到…关闭画图程序再次单击预鑒图标系统提示save……将数据窗口取名为aaa选择是将结果保存到表中
同理若想将动画存入数据库则另加一字段将音乐存入数据库则另加一字段