界面布局:
DBGrid button1
数据库控件:adoconnection adoquery1 datasource
button的click事件: with adoquery1 do
begin
close;
sql.text:='select * from menu';
open;
end;
datasource.dataset:=adoquery1;
功能:点击button1 在DBGrid中显示数据库中表menu的信息。问题来了: 我点击一次button 在数据库中用sp_who查询进程信息时,进程数就+1,
一直点击button就一直+1 导致进程数越来越多!!!
这该怎么办??? 我要它进程数不增加,该怎么改写代码?!!!!
DBGrid button1
数据库控件:adoconnection adoquery1 datasource
button的click事件: with adoquery1 do
begin
close;
sql.text:='select * from menu';
open;
end;
datasource.dataset:=adoquery1;
功能:点击button1 在DBGrid中显示数据库中表menu的信息。问题来了: 我点击一次button 在数据库中用sp_who查询进程信息时,进程数就+1,
一直点击button就一直+1 导致进程数越来越多!!!
这该怎么办??? 我要它进程数不增加,该怎么改写代码?!!!!
datasource.dataset:=adoquery1;这句放到上面试试……
query的开关,应该不影响啊
adoquery1.Connection:=ADOConnection1;
DataSource1.DataSet:=ADOQuery1;
DBGrid1.DataSource:=DataSource1;然后在单击事件里写入
with adoquery1 do
begin
close;
sql.clear;
sql.text:='select * from menu';
open;
end;
with adoquery1 do
begin
close;
sql.Clear; //每次执行要删除sql语句
sql.text:='select * from menu';
open;
end;
datasource.dataset:=adoquery1;
begin
close;
sql.clear;
sql.text:='select * from menu';
open;
end;
clear在一些时候是有用的
用sql.text时候clear有神马用,还请赐教
你的DBGrid事件中有没有什么处理过程?
你多出来了线程,肯定是哪里创建了连接了。
不然,不可能多出来的。
ADOQUERY没这问题。