如何在三层程序中更新服务器上的Blob字段?(150分)

  • 主题发起人 主题发起人 icoy
  • 开始时间 开始时间
I

icoy

Unregistered / Unconfirmed
GUEST, unregistred user!
应用服务器:TADOQuery+Access2000
客户端:TClientDataSet
当我在服务端TADOQuery的SQL属性中加上"Select id,name,BLOBField From Table1"
的时候,我在客户端所有的更新全都没有出错,但服务端数据完全没有更新!!!
就连几个不是BLOB的字段也没有更新。用Stream写到Clientdataset1的BLOB
也都没有更新。同时无法新添加记录,奇怪就奇怪在没出错。
当我在服务端把BLOB字段去掉“Select id,name From Table1”,此时用相同方法更新
全部成功。
更新我是先ClientDataSet1.Post,然后ClientDataSet1.ApplyUpdates(0)
ClientDataSet的FetchOnDemand是True。
请问高手我如何才能更新?急。
 
如果ApplyUpdates(0)未能提交,就返回非'0',不引发异常。
BLOB 不能用于查询语句中,可用Table连。
 
我用TTable也不行,原来是出错了。返回值是1,如何才能避免这种情况。
因为当我根本不更新BLOB的时候也不行呀。
 
单独更新BLOB行吗?
 
三层结构做维护就是难
 
单独更新BLOB就没有意义了,我没试过。
奇怪的是如果我修改一条记录的一个普通字段,可以更新;如果修改BLOB,则不行。
添加新纪录无论如何不行。
大虾块帮忙吧,急死我了。
 
多人接受答案了。
 
我碰到了和你一样的问题,在客户端增加记录时,Blob字段的内容没有把存到数据库中,而别的字段
都可以,为什么?你解决了吗?能告诉我方法吗?我快急死了
 
后退
顶部