知识大全 用PB开发多媒体数据库管理系统
Posted 知
篇首语:学向勤中得,萤窗万卷书。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 用PB开发多媒体数据库管理系统相关的知识,希望对你有一定的参考价值。
用PB开发多媒体数据库管理系统 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
图像 声音 数字视频是多媒体的基本要素 目前多媒体数据库正得到是益广泛的应用 例如 桂林市开通的交互式有线电视实时点歌系统 即人们可以用电话机的按键点歌 并且同时在电视上看到自己正在操纵的菜单 选中歌曲后电视立即自动播放MTV 不需旁人帮助 这是网络多媒体数据库的具体应用 用PowerBuilder开发应用程序时 您完全可以把多媒体数据集成到应用程序中 使您的应用程序具备多媒体录制 查询播放等众多功能 显然 多媒体将进一步提高应用程序的层次 并且给用户一种身临其境的感觉
怎样用PowerBuilder创建并展示多媒体数据库呢?它可分为两部分
怎样将图象 声音 动画存入数据库
查询系统的制作
下面以PowerBuilder 和SQL Anywhere为例 让我们快速制作一个简单的查询系统 制作婚姻介绍系统 查询到符合条件的人后 显示该人的人事档案卡上有个人的照片 要求双击个人照片 能调用Acdsee展示该照片(顾客能任意放大 缩小欣赏照片) 或者双击该个人档案某处放映一段该个人档案的个人生活录相 个人喜欢的音乐等
一 怎样将图象 声音 动画存入数据库
首先要有一个包含Blob数据类型的表 然后利用Bb数据窗口的 OLE database Blob (OLE数据库二进制大对象) 可以轻易地把图片等多媒体数据存入数据库或展示在屏幕上
步骤如下
建立一个表aaa 内含两个字段 记录号和相片 一个字段取名为ID 另一个字段名为Pic 类型分别为char和Long binary ID为主键 具体操作步骤为 进入Database画笔来建立此表 ID字段取type 为char 不许为空 即Null为No Pic字段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的下拉条中选中 aaa id 在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 选择 是 将结果保存到表中
同理 若想将动画存入数据库则另加一字段 将音乐存入数据库则另加一字段
二 查询系统的制作
制作从键盘输入记录号 可查询到该人的档案记录
①制作查询窗口 步骤为 鼠标点按Window图标 新建一窗口 在窗口中 添加一个DataWindow控件 在DataWindow控件上按鼠标右键 选择并单击Properties快捷菜单项 在在Datawindow object name旁按Browse按钮 选择装入前面制作的aaa数据窗口 调整好窗口的大小 再在窗口上放一SingleLineEdit控件 和一CommandButton按钮控件 点中按钮控件并按右键选择Properties 将其显示文本修改为 查询 按钮名称仍为cb_ 点中按钮控件并按右键选择Script… 输入以下脚本
dw_ settransobject(sqlca)
dw_ retrieve(sle_ text)
关闭并保存 按Save图标保存该窗口 窗口取名为aaa
②将查询窗口连接入test应用程序内 点按Application图标 出现test应用程序 双击test 出现名为w_genapp_frame的窗口图标 这是应用程序为我们提供的主窗口的名字 点按w_genapp_frame不放按右键选edit 出现该主窗口 将一按钮控件放入该窗口 按钮显示的文本可改为 唯一查询 也可省略不改 点中该按钮控件并按右键选择Script… 输入 open(aaa) 保存 点按Application图标 再按script图标 出现应用程序的自动生成的主体脚本 部分内容如下 它的任务是将数据库初始化 相当于win ini 假若不要应用程序的模板 则下面的脚本需自己输入 而使用模板后 现在我们只需将//connect 前面的注释号 // 符号删除即可 除省事外还避免了因为排版引起的下面的程序格式错误 (本人经常因为书中个别字母印刷错 或排版引起的程序格式错误造成程序无法运行而痛心不已 )
sqlca DBMS = ProfileString (ls_startupfile database dbms ) sqlca database = ProfileString (ls_startupfile database database ) sqlca userid = ProfileString (ls_startupfile database userid ) sqlca dbpass = ProfileString (ls_startupfile database dbpass ) sqlca logid = ProfileString (ls_startupfile database logid ) sqlca logpass = ProfileString (ls_startupfile database LogPassWord ) sqlca servername = ProfileString (ls_startupfile database servername ) sqlca dbparm = ProfileString (ls_startupfile database dbparm ) connect;
现在按Run图标运行该程序 结果如下图 为简化程序 我们只加入了多媒体中的图片字段 成功后 读者可自已增加动画 声音字段
讨论 假若多媒体的字段和数据个数比较少 也可用变量和函数来解决 如
temp =temp+ bmp p_ picturename=temp ole_ insertfile( sample avi ) run( c:\\acdsee exe c:\\aa bmp normal!)
cha138/Article/program/SQL/201311/16214相关参考
用PB开发多媒体数据库管理系统(二) 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 二查询系统的
PB/Sybase系统开发中的数据库转移 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 摘要
PB开发Sybase数据库应用技巧点滴[2] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!&nbs
PB开发Sybase数据库应用技巧点滴[1] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!&nbs
PB开发Sybase数据库应用技巧集锦[2] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!&nbs
PB开发Sybase数据库应用技巧集锦[1] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!&nbs
PB中实现可监控的数据备份 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 在众多的数据库应用开发
利用PB实现动态系统用户登录 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 在多用户的大型数据库
使用PB7.0开发Web应用 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! Sybase公司的P
一个小老板眼中的开发工具—PB杂谈[1] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!