我在程序中定义一string变量,通过一个循环赋值!
长度到达一定程度后,变量显示出现乱码!出现容量不足的错误提示!
但objectpascal中string是2G的大小,(我赋值远没有那么大)。
小弟一直困扰多时!望大侠指点一二!!
长度到达一定程度后,变量显示出现乱码!出现容量不足的错误提示!
但objectpascal中string是2G的大小,(我赋值远没有那么大)。
小弟一直困扰多时!望大侠指点一二!!
要不你把你的代码贴出来,看看是不是辅值的时候有问题
再付给一个table的filter属性!
进行过滤处理!就出现了以上错误信息!是不是和bde中的设置关系!
还有在运行期中获取字符串,显示由乱码?(好像和delphi的先显示器有关。大家可以试试)
Query.filter :=true;str很长!就会报错!!
是不是dataset的filter就存在的这个bug!!
Query.filtered :=false;
Query.filter :=str;
Query.filtered :=true;
Query.filtered :=false;
Query.filter :=str1;
Query.filtered :=true;
Query.filtered :=false;
Query.filter :=str2;
Query.filtered :=true;
我的机器可以分配500MB左右的字符串赋值操作.大概是SetLength()的问题吧.
偶就是简单过滤!
str :=... 一个长串!
然后
Query.filtered :=false;
Query.filter :=str;
Query.filtered :=true;
当str比较短时,ok!
超过一定长度,,出错。。
我觉得和filter有关但不知怎么改进。。?
肯定开关受了限制!
什么开关?
要查询直接用SELECT好了
select * from t1 where id in select t2 where yourcondition
你说的的确是一个解决方法。
但现在小弟已这么做了,
既然出现了这个问题,我想大家讨论讨论,有没有解决方法!
还望大侠们相助!!!