各位好!小弟刚开始学DELPHI,以前有VC的编程经历!昨天试着用ADO的控件做了第一个程序!我添加了一个ADODATASET和一个DATASOURCE,我通过设置DATASET去读取一个SQL数据库中大概记录在70000行左右的表。不知道为什么,读取速度很慢!后来我想通过控制的查询条件的方式,让DBGRID在没有输入查询条件的时候不显示查询结果,但是一直是失败!我先把ADODataSet1的ACTIVE属性设置为False,我的具体语句是:procedure TForm1.Button1Click(Sender: TObject);begin
ADODataSet1.Filtered:=False; ADODataSet1.Filter:='studyid ='+Trim(Edit1.Text);ADODataSet1.Filtered:=True; ADODataSet1.active:=Ture;
end;其中studyid是整数型。请各位指教!
ADODataSet1.Filtered:=False; ADODataSet1.Filter:='studyid ='+Trim(Edit1.Text);ADODataSet1.Filtered:=True; ADODataSet1.active:=Ture;
end;其中studyid是整数型。请各位指教!
解决方案 »
- 高性能大容量SOCKET并发(四):粘包、分包、解包
- delphi开发的gprs服务器,如何解决gprs的重连问题?
- cxtreelist不能编辑但可以复制里面的内容
- sql的连接问题,急死我了。。。进````
- Question7
- delphi能读出刷卡机的数据吗?怎么读,请指教。
- 那里要设置一下呢?
- 存储中文,出现乱码!在线等待.
- 在console类型的程序中,怎么输出信息到控制台中?
- 不为名不为利,delphi小组的计划书,请朋友们进来!!!
- 如何在dbgrid中设置指定格子的背景色?(急)
- 江湖救急!怎样动态修改DBGrid中的列标题,还有一个问题是为什么我用手动创建DBGrid列后,却无法显示查询结果了???
===================================
ADODataSet1.active:=False;
用filter的时候,不用ADODataSet1.active在true与false之间切换,直接
ADODataSet1.Filtered:=False;
ADODataSet1.Filter:='studyid ='+Trim(Edit1.Text);
ADODataSet1.Filtered:=True; 就是了
ADODataSet1.Filter:='studyid ='+Trim(Edit1.Text);
ADODataSet1.Filtered:=True; 就是了我用过上面的语句啊!但是 初始化出来的DBGRID仍然是读取了60000多条记录以后的!那样太慢了啊!我的目的就是要先不让DBGRID显示任何数据,按了按钮以后才根据输入的条件去显示数据!
不就OK了?
等你想要的时候再把它赋上去就可以了
^-^
这样不用每次都读数据库了