請問有辦法一个datasource对多个dbgrid嗎?解决思路
請問有辦法一个datasource对多个dbgrid嗎?
例如只使用adoQuery1和DataSource1
但是用了DBGrid1、DBGrid2
來顯示2個select
adoQuery1.Close; adoQuery1.sql.clear;
adoQuery1.SQL.Add('select * from a where cv =' + Quotedstr(Edit1.text) + ' and acode like ' + QuotedStr(Edit2.Text + '%'));
adoConnection1.Connected:=true;
adoQuery1.Open;
DBGrid1.DataSource:=DataSource1;
adoQuery1.Close; adoQuery1.sql.clear;
adoQuery1.SQL.Add('select * from Saw where cv =' + Quotedstr(Edit1.text) + ' and code like ' + QuotedStr(Edit2.Text + '%'));
adoConnection1.Connected:=true;
adoQuery1.Open;
DBGrid2.DataSource:=DataSource1;
小弟我試了半天還是不行,只要adoQuery一Close
DBGrid就空白了
請各位指教
------解决方案--------------------
不行
datasource只是一个中间件,连接dataset与数据感知控件
如果你要显示两个数据集,要两个dataset和两个datasource
------解决方案--------------------
没谁这么做的,常见的都是一个Dbgrid对应一个datasource,再一个datasource对应一个ADOquery,再多个adoquery对应一个adoConnection, 这样才能保证程序稳定性和不出意外情况!
例如只使用adoQuery1和DataSource1
但是用了DBGrid1、DBGrid2
來顯示2個select
adoQuery1.Close; adoQuery1.sql.clear;
adoQuery1.SQL.Add('select * from a where cv =' + Quotedstr(Edit1.text) + ' and acode like ' + QuotedStr(Edit2.Text + '%'));
adoConnection1.Connected:=true;
adoQuery1.Open;
DBGrid1.DataSource:=DataSource1;
adoQuery1.Close; adoQuery1.sql.clear;
adoQuery1.SQL.Add('select * from Saw where cv =' + Quotedstr(Edit1.text) + ' and code like ' + QuotedStr(Edit2.Text + '%'));
adoConnection1.Connected:=true;
adoQuery1.Open;
DBGrid2.DataSource:=DataSource1;
小弟我試了半天還是不行,只要adoQuery一Close
DBGrid就空白了
請各位指教
------解决方案--------------------
不行
datasource只是一个中间件,连接dataset与数据感知控件
如果你要显示两个数据集,要两个dataset和两个datasource
------解决方案--------------------
没谁这么做的,常见的都是一个Dbgrid对应一个datasource,再一个datasource对应一个ADOquery,再多个adoquery对应一个adoConnection, 这样才能保证程序稳定性和不出意外情况!