datawindow ole database blob急!急!急!急!急!急!

takeiteasy 2006-11-08 09:33:34
2.1 数据库设计
  为了存放有关文档的信息,在Oracle的数据库中建立一张名为document的表,其中表结构如表1。

Id number(10)
word Long

  其中id为主关键字,表示文档的序号,word为文档的内容,采用blob类型
2.2 数据窗口设计
  (1) 在数据窗口画板中创建一个新的数据窗口对象,以document表作为数据窗口的数据源,选中id, word字段,
  (2) 进入数据窗口画板工作区,选择object菜单下的OLE Database Blob项,在数据窗口中单击想要放置这个blob对象的地方,此时将弹出Database Blob Object窗口设置该对象的属性。
  (3) 在Definition标签页下的Client Class和Client Name两个文本框可以任意填写,在某些OLE服务器应用程序中,这两个值分别显示在服务器窗口顶部和服务器窗口标题条中。
  在Table框中选择包含所需blob字段的数据库表(在本例中为document表)。同时,在Large Binary/Text Columns列表中选择documents表中包含的blob字段,即word字段。
  Key clause框中的内容是用来生成SELECT语句中的WHERE子句,查询和修改数据库中的blob字段(在本例中默认为id=:id,冒号表示数据窗口的列)。
  如果想每次打开OLE服务器应用程序时打开的是同一个文件,那么在File Template文本框中输入该文件的名字;否则在OLE Class:Description下拉列表框中选择一个OLE服务器应用程序。如果在这个列表中没有所需的OLE服务器应用程序,那么需要运行Windows RegEdit程序把这个OLE服务器应用程序加到列表中,在本例中选择该列表框中的:Word.Document.8:Microsoft word文档。
  在Client Name Expression框中输入文本或表达式,OLE服务器应用程序的窗口标题中可能会用到该表达式,在本例中,输入filename字段,当运行该程序,用Word打开某一个文档时,相应的文档名就会显示在Word的窗口标题中。
  (4) 设置完Definition标签页下的内容后,选择General标签,在Name框中为该对象输入一个名字,该名字不是必须的,但可以使程序开发者在程序中引用该对象。本例中在该处取名为content-ole。
  (5) 单击OK按钮,关闭Database Blob Object对话框,数据窗口中将会出现一个标以blob并带有下划线的框。
  (6) 命名并保存该数据窗口对象,本例中把它取名为d-document。


我的问题:
pb8 10656
oracle817
在数据窗口预览的方式下插入三条以上的记录之后,当然可以更多。然后点击retrieve.出现错误:
select error: Decimal conversion error.Powerbuilder only supports 18 decimail digits.
如果我插入两条记录,则retrieve出来三条?
...全文
229 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
AFIC 2006-11-08
  • 打赏
  • 举报
回复
Id number(10) -> id varchar2(10)
balloonman2002 2006-11-08
  • 打赏
  • 举报
回复
参考:
http://topic.csdn.net/t/20041202/10/3607978.html
http://www.linuxmine.com/1744.html

你还是把数据库里的字段类型改成blob试验一下
takeiteasy 2006-11-08
  • 打赏
  • 举报
回复
是的。在oracle中。long就是blob列。
balloonman2002 2006-11-08
  • 打赏
  • 举报
回复
word Long

这个word列是blob吗?

609

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder DataWindow
社区管理员
  • DataWindow社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧