首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ Builder >

一个不太科学的有关问题,来求各位大神指点

2013-06-25 
一个不太科学的问题,来求各位大神指点用一个adoquery控件,查询一个表的记录集,例如:select * from Table1

一个不太科学的问题,来求各位大神指点
用一个adoquery控件,查询一个表的记录集,
例如:select * from Table1
这个sql语句放在oracle执行,返回的数据集为50
而用adoquery执行,adoquery->RecordCount返回的数据集却为25,
更不科学的是,不管查询哪个表(不同数据集的表)返回都是25
第一次遇到这个问题,各位大神有遇到过这种类似的问题么?如何解决?
[解决办法]
对,有可能指向的sql语句是相同的。
adoquery->SQL->Clear是不是没有清楚原有sql语句。
指向open前线ShowMessage一些adoquery->SQL->Text看sql是否正确
[解决办法]
有可能是adoquery中有其他的语句
建议写成 adoquery->SQL->Text = "select * from Table1"
[解决办法]
adoquery在写入新的SQL语句之前都必须先清空之前的,否则之前的语句可能依然有效
[解决办法]
ado什么版本的,bcb5不打补丁的话ado是有bug的。
[解决办法]

引用:
OraQuery2->Close();
        OraQuery2->SQL->Clear();
        OraQuery2->SQL->Add("select * from TB_SBYWSJB");
        OraQuery2->Open();
        int count = OraQuery2->RecordCount;

这是源码,你们说的这些情况,我都试过了,count值一直都是25,郁闷啊


以前遇到过这事,已经忘记了,似乎是代码和数据库的问题

热点排行