如何分析、解决写二进制字段(image类型)对长度的限制(希望数据库老手帮我分析一把)?

时间:2022-08-19 21:01:18
我的系统是一个三层结构的系统。
在中间层中我使用DBE向数据库写入image类型数据时,最大值差不多只能写入10KB,超过10KB在运行.ExecSQL时,就会死掉(但没有出错)。
=================================
此后我对这个问题做了一些测试:
一、我使用这个程序换了另一台数据库服务器执行时,客户端可以正常通过中间层向数据库写入数百KB大小的东西。
  ?: 我怀疑是数据库配置问题、排除客户端的问题
二、我使用的几台中间层服务器的程序都是一样子,其中有一台中间层服务器可以使用BDE向数据库写入>1MB的二进制数据
  ?: 我排除了BDE不能实现向数据库写入>1MB二进制数据的可能。但各中间层服务器装的系统、程序都是一致的,为何会出现这种情况?
三、我用ADO时,可以正常、快速的写数据库写入较大的数据(写入一个5MB的东西、也仅须要10多秒钟)。
  ?: 我排除了第一次测试时认为是数据库的问题,怀疑是BDE配置引起的问题。
四、我通过修改DBE的各参数、均不能解决这个问题
  ?: 我排除了BDE配置引起的问题
=================================

由于种种原因,中间层不能改写为ADO方式,请问我得如何才能让BDE可以写入>1MB的二进制数据到数据库中呢?

5 个解决方案

#1


试试把Query.ExecSQL换成DataBase.Execute呢

#2


命令的超时是不是加长一些。

#3


DataBase.Execute肯定不行的。
现在设定的超时时间是1分钟,再设长就没意义了。用户保存一个东西要等待一分钟,那是不切实际的。

没有别的可能吗?

#4


没人回答吗?

只要说出有什么可能就可以了。。。

(明天结帖)

#5


兄弟,这样我就得了50分呀?这个问题没人回答了?再顶顶吧

#1


试试把Query.ExecSQL换成DataBase.Execute呢

#2


命令的超时是不是加长一些。

#3


DataBase.Execute肯定不行的。
现在设定的超时时间是1分钟,再设长就没意义了。用户保存一个东西要等待一分钟,那是不切实际的。

没有别的可能吗?

#4


没人回答吗?

只要说出有什么可能就可以了。。。

(明天结帖)

#5


兄弟,这样我就得了50分呀?这个问题没人回答了?再顶顶吧