procedure TForm1.Button1Click(Sender: TObject);
begin
datasource1.DataSet :=query1;
dbgrid1.DataSource :=datasource1;
query1.DatabaseName :='userinfo';
query1.DataSource :=datasource1;
query1.Active :=true;
query1.Close;
query1.SQL.Clear ;
query1.SQL.Add('select * from userinfo');
try
query1.Open ;
except
query1.ExecSQL ;
end;
end;
为什么会出错?请指点。
begin
datasource1.DataSet :=query1;
dbgrid1.DataSource :=datasource1;
query1.DatabaseName :='userinfo';
query1.DataSource :=datasource1;
query1.Active :=true;
query1.Close;
query1.SQL.Clear ;
query1.SQL.Add('select * from userinfo');
try
query1.Open ;
except
query1.ExecSQL ;
end;
end;
为什么会出错?请指点。
begin
datasource1.DataSet :=query1;
dbgrid1.DataSource :=datasource1;
query1.DatabaseName :='userinfo';
query1.DataSource :=datasource1;
query1.Active :=true;这里sql里边有语句吗,你就激活它。应该是 if query1.active then query1.close;
query1.Close;
query1.SQL.Clear ;
query1.SQL.Add('select * from userinfo');
try
query1.Open ;
except
query1.ExecSQL ;
end;
end;
begin
datasource1.DataSet :=query1;
dbgrid1.DataSource :=datasource1;
query1.DatabaseName :='userinfo';
query1.Close;
query1.SQL.Clear ;
query1.SQL.Add('select * from userinfo');
query1.Active :=true;
try
query1.Open ;
except
query1.ExecSQL ;
end;
end;
我改为这样之后,又出现“没有足够内存执行操作”的错误。
begin
datasource1.DataSet :=query1;
dbgrid1.DataSource :=datasource1;
query1.DatabaseName :='userinfo';
query1.DataSource :=datasource1;;;//去掉
query1.Active :=true;;//去掉
query1.Close;
query1.SQL.Clear ;
query1.SQL.Add('select * from userinfo');
try
query1.Open ;
except
query1.ExecSQL
end;
end
query1.Active :=true;
这两句应该去掉.