一个表,数据量大概是2万条左右,用"select * from table"打开,总是报内存不足。用了视图之后,还是一样。原来是在delphi6下编译的,运行没有错误,后改用delphi5后出现这个问题,bde的补丁全部安装。代码如下:
w_main.sql2.close;
w_main.sql2.sql.clear;
w_main.sql2.sql.add('select count(id) from marcsub');
w_main.sql2.open;
marccou:=w_main.sql2.Fields[0].AsInteger;
w_main.marc.close;
w_main.marc.open;
w_main.sql1.DisableControls;
sqltext:=w_main.sql1.sql.text;
w_main.sql2.close;
w_main.sql2.sql.clear;
w_main.sql2.sql.add('select * from bookcou');
w_main.sql2.open;
marcnew:=w_main.sql2.fields[0].asinteger;
w_main.sql1.Close;
query2.close;
query2.sql.clear;
query2.sql.add('select * from bookmarc');这一句的时候报错。
query2.open;
w_main.sql2.close;
w_main.sql2.sql.clear;
w_main.sql2.sql.add('select count(id) from marcsub');
w_main.sql2.open;
marccou:=w_main.sql2.Fields[0].AsInteger;
w_main.marc.close;
w_main.marc.open;
w_main.sql1.DisableControls;
sqltext:=w_main.sql1.sql.text;
w_main.sql2.close;
w_main.sql2.sql.clear;
w_main.sql2.sql.add('select * from bookcou');
w_main.sql2.open;
marcnew:=w_main.sql2.fields[0].asinteger;
w_main.sql1.Close;
query2.close;
query2.sql.clear;
query2.sql.add('select * from bookmarc');这一句的时候报错。
query2.open;
解决方案 »
- array of char to string
- delphi开发的程序资源释放问题。为什么用一些内存泄漏软件检测会出现很多地方有泄漏。
- 使用Winsock进行UDP/TCP通信是用那些控件,?那位能给一段代码?
- delphi中ASCII转换成汉字的问题(各位大侠请赐教)
- fr2.5报表为何不能预览?
- 用indy的tidhttp的Get方法下载文件,想让他下载一部分就停下,然后重新开始下在,然后再停下......
- 大家散分啦
- 怎样把数组( PByteArray)转换成BITMAP?
- 请问大家一个关于opendialog的问题?
- 大家好!大家新年快乐! 大伙们亲苦了!
- 一个票据打印问题十万火急救命来了
- 高分求急:如何将Char型(或Int)转换为Byte型????
数据一多,肯定有问题.要不用ADO,要不用ODBC吧.
改用ado后,没有这种问题!