我的dbgrid显示不出来
我只用了一个DBGRID 开始连的是datasource1,但是在另外一个按钮上我要它连datasource2 我是这样设的
dbgrid1.DataSource:=DataSource2;
但是在执行显示的时候会报错 error:connect is in use by another statement;

解决方案 »

  1.   

    我的代码是这样的
    procedure TForm1.BitBtn2Click(Sender: TObject);
    begin
      dbgrid1.DataSource:=DataSource2;
        with dataform.StoredProc2 do
      begin
        close;
        unprepare;
        parambyname('@分类号').Value:=edit1.Text;
        parambyname('@类别').Value:=edit2.Text;
        prepare;
        execproc;
      end;
        application.MessageBox('修改成功','INFORMATION',mb_iconinformation);        with query2 do
        begin
          close;
          sql.Clear;
          sql.Add('select * from fl');
          open;\\执行到这里的时候会报错,但是我的query2是连datasource2啊
        end;end;请高手指教
      

  2.   

    在QUERY设吗?
    不能设啊
    no sql statement avealable
      

  3.   

    这样吧,刷新显示吧,何必呢
    你重新打开数据集后
    原来的不变
    procedure TForm1.BitBtn2Click(Sender: TObject);
    begin
      dbgrid1.DataSource:=DataSource2;
        with dataform.StoredProc2 do
      begin
        close;
        unprepare;
        parambyname('@分类号').Value:=edit1.Text;
        parambyname('@类别').Value:=edit2.Text;
        prepare;
        execproc;
      end;
        application.MessageBox('修改成功','INFORMATION',mb_iconinformation);
    dataform.StoredProc2.close;
    dataform.StoredProc2.open;