当前位置: 代码迷 >> PB >> 怎么将EXCEL文件存入Anywhere数据库的long binary字段
  详细解决方案

怎么将EXCEL文件存入Anywhere数据库的long binary字段

热度:44   发布时间:2016-04-29 08:28:57.0
如何将EXCEL文件存入Anywhere数据库的long binary字段
如题,是存入文件,不是导入数据

------解决方案--------------------


使用FileWrite写到指定文件(注意字节限制)

或者 加一excel ole控件
ole_excel.objectdata=blob_xls
------解决方案--------------------
数据窗口的blob列

    5.1 数据窗口blob列的功能

??  在PB 的datawindow画板中DBOLE控件允许用户利用这个控件浏览和操作数据库中的大二进制数据,即通过DBOLE控件可以作如下操作:

  ??往数据库中存储大二进制数据,如:excel工作表、word文档、视频文件、图片文件等各种格式的文件;

  ● 从数据库中检索数据到datawindow对象; ??

  ● 使用OLE服务器程序察看修改数据; ??

  ● 将修改后的数据保存回数据库;

  5.2 在数据窗口中添加blob列的的步骤

  1) 选择具有二进制字段的数据表作为数据源建立一新的数据窗口(该窗口可以至少需要包含非数据库表的标识列)

  2) 选择insert -control-OLE database blob 菜单,在数据窗口的detail节中要插入blob列的位置单击鼠标,这时将显示如图1所示的对话框

  下面解释这些属性的具体含义

  1) client class: 客户类名,默认为datawindow

  2) client name:客户名,默认为untitled

  3) table 选择含有blob列的数据库表,所选表的字段将出现在右侧的large binarytext column列表框中。

  4) large binarytext column:选择一个blob类型的字段列

  5) key clause:检索和更新blob数据的关键字表达式其中使用带冒号前缀的变量指出是数据窗口对象的列,如 表达式 id=id,id是数据库表中的列,变量指出数据窗口对象的列

  6) filetemplate :如果需要OLE应用服务器每次打开相同的文件,则在filetemplate框中输入文件名。

  7) OLE class :如果不需要OLE应用服务器每次打开相同的文件,则在OLE class框中选择一个OLE类,如Pbrush。

  8) Client name expression:显示在OLE服务器应用程序窗口标题的文字,可以输入为:对应记录的id号是+id

  单击ok按钮关闭对话框,将dbole列添加到适当的位置,保存数据窗口。 ??预览则可以对数据库中的blob数据进行存取,但是在新建的记录中只能存取OLE class框中选择的一种格式的blob数据,不能存储多种格式的数据;但如果数据库中存有多种格式的数据,可以预览各种格式的数据。
------解决方案--------------------
存储时:读取EXCEL文件 至 blob 再updatebolb 至数据库
打开时:selectblob 至blob 再save 至excel文件, 再用EXCEL 打开。。。
  相关解决方案