Adoquery怎么赋值给Clientdataset

wozhaozhe2008 2017-03-20 02:30:12
我用ADOQuery查询到数据,怎么赋值给Clientdataset,
...全文
1029 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
yaowz27 2017-03-29
  • 打赏
  • 举报
回复
1.创建TADOQuery连接数据库。 2.创建TDataSetProvider连接TADOQuery,DataSet属性为ADOQuery。 3.TADOQuery查询出数据后,将TDataSetProvider的Data属性赋值给TClientDataSet的Data属性即可 例:

procedure Foo;
var
  q: TADOQuery;
  p: TDataSetProvider;
  c: TClientDataSet;
begin
  q := TADOQuery.Create;
  p := TDataSetProvider.Create;
  p.DataSet := q;
  c := TClientDataSet.Create;
  q.ConnectionString := 'XXX';
  q.SQL.Text := 'SELECT * FROM t1';
  q.Open;
  c.Data := p.Data;
end;
lyhoo163 2017-03-21
  • 打赏
  • 举报
回复
楼主是服务器端,还客户端操作?
jjpweb 2017-03-20
  • 打赏
  • 举报
回复
1.adoquery的数据库连接设置对,sql语句写进去 2.datasetprovider的dataset冒号等于 adoquery 3.clientdataset的providername:=datasetprovider 弄个dbgrid和datasource显示出来。写法没问题可能是 数据库连接没设对,或者sql语句没写。
lyhoo163 2017-03-20
  • 打赏
  • 举报
回复
引用 1 楼 wozhaozhe2008 的回复:
我用clientdataset连接了DataSetProvider1。 这样去赋值DataSetProvider1.DataSet := ADOQuery1;。提示missing dataset property
1、DataSetProvider1,它是服务器数据集控件。不能这样操作。 2、ClientDataSet读取远程的数据,这样它就有了属性。 3、向ClientDataSet,通过 Append; FieldByName('XX').asString:=''; 。。。。。 Post; 赋值
wozhaozhe2008 2017-03-20
  • 打赏
  • 举报
回复
我用clientdataset连接了DataSetProvider1。 这样去赋值DataSetProvider1.DataSet := ADOQuery1;。提示missing dataset property

2,498

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧