DBEXPRESS2006访问ORACLE 9.2.0.1版本以上的CLOB字段

边缘998 2010-10-23 04:31:56
装了BDS2006,自带的DBEXPRESS版本,测试性能时发现,对ORACLE的CLOB不支持。
相对于BDE来就,没有BDE支持得好。但BDE在查询上又出现瓶劲。


哪个高手知道如何解决访问CLOB的问题啊。
TSqlConnection+TSqlQuery +Oracle9.2.0.1

Create Table TestTable
(
othersLargeStr Clob,
othersId varchar2(20)
)

上传到CLOB的写法:

TSqlQuery :实列为 aSqy


aSqy.close;
aSqy.sql.clear;
aSqy.sql.add('insert into testtable values('这里是读回来的大文本数据',''1'')');
aSqy.execsql(False);



读取的时候报错咯。

for i=0 to 1 then
begin
aSqy.close;
aSqy.sql.clear;
aSqy.sql.add('select othersLargeStr from testtable');
aSqy.open;
end;

我这里查两次,目的是让读者知道读一次的时候看似正常,但事实上已把TSQLCONNECTION锁死了。再查的话就挂了。


...全文
108 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
边缘998 2010-10-25
  • 打赏
  • 举报
回复
问题已解决,结贴。
升级驱动就OK了。
边缘998 2010-10-24
  • 打赏
  • 举报
回复
顶上来先,这个问题不解决的话,我的项目改动就费劲了,现在是BDE出现瓶颈。
DBX可以解决查询瓶颈,但又引入了不能查CLOB的问题。。。。
高手啊,出来哦。。
分不高可加,只要解决就好。
边缘998 2010-10-23
  • 打赏
  • 举报
回复
有没有高手出来指点啊,
是我的DBEXPRESS版本有问题还是我的9.2.0.1版本不支持呢。
同样的问题我用TOAD 5.5 直接select 这个CLOB字段,一样是报Stream Read Error.

然之后就是因为锁了表。再查的话就出现
ORA-01327:在活动操作未结束前不允许新的操作。

同样的表,同样的数据,换回用BDE查,没有任何问题,读出来的数据也正确。

有哪个碰到过呢?我好像见别人说D7+DBEXPRESS就解决这个问题了,为什么2006还碰到呢。
李维还有哪些没有解释的。
SQLDebug_Fan 2010-10-23
  • 打赏
  • 举报
回复
帮顶,让月亮出来帮忙看看。

2,496

社区成员

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

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