将AdoDataSet的数据集传到ClientDataSet后遇到的问题……请大家帮忙解惑
时间:2011-11-22
来源:互联网
AdoDataSet连接到本地的Access,按条件获得几条数据。
然后我使用 http://topic.csdn.net/t/20050407/13/3916666.html# 中3楼pazee的方法 将这几条数据传给了ClientDataSet
Delphi(Pascal) code
去数据库查询,数据没有被插入……这是为什么呢?
然后我使用 http://topic.csdn.net/t/20050407/13/3916666.html# 中3楼pazee的方法 将这几条数据传给了ClientDataSet
Delphi(Pascal) code
dstRegistration.DisableControls; try dmData := TdmData.Create(nil); dmData.cdsRegistration.Active := True; dmData.cdsRegistration.Data := dspRegistration.Data; dmData.cdsRegistration.Insert; dmData.cdsRegistration.Post; if (dmData.cdsRegistration.ChangeCount > 0) then dmData.cdsRegistration.ApplyUpdates(-1); dmData.cdsRegistration.Active := False; finally dstRegistration.EnableControls; dmData.Free; end;
去数据库查询,数据没有被插入……这是为什么呢?
作者: tohaerok 发布时间: 2011-11-22
不知道你是怎么设置的.可以这样试试,使用ADOQuery查询,提供数据
ADOQuery.Connection=ADOConnection;
DataSetProvider.DataSet:=ADODataSet;
ClientDataSet.ProviderName=DataSetProvider;
with ADOQuery do
begin
Close;
SQL.Clear;
SQL.ADD('Select * From t');
Open;
end;
这样ClientDataSet就有数据了
而数据操作,就操作ClientDataSet即可,如:ClientDataSet.Append;Edit;Post;Cancel;...等等
提交到数据库:
if ClientDataSet.State In [dsEdit,dsInsert] then
ClientDataSet.Post;
if ClientDataSet.ChangeCount>0 then
ClientDataSet.ApplyUpdates(-1);
ADOQuery.Connection=ADOConnection;
DataSetProvider.DataSet:=ADODataSet;
ClientDataSet.ProviderName=DataSetProvider;
with ADOQuery do
begin
Close;
SQL.Clear;
SQL.ADD('Select * From t');
Open;
end;
这样ClientDataSet就有数据了
而数据操作,就操作ClientDataSet即可,如:ClientDataSet.Append;Edit;Post;Cancel;...等等
提交到数据库:
if ClientDataSet.State In [dsEdit,dsInsert] then
ClientDataSet.Post;
if ClientDataSet.ChangeCount>0 then
ClientDataSet.ApplyUpdates(-1);
作者: kaikai_kk 发布时间: 2011-11-23
引用 1 楼 kaikai_kk 的回复:
不知道你是怎么设置的.可以这样试试,使用ADOQuery查询,提供数据
ADOQuery.Connection=ADOConnection;
DataSetProvider.DataSet:=ADODataSet;这个改成ADOQuery
ClientDataSet.ProviderName=DataSetProvider;
with ADOQuery do
begin
Close;
SQL……
不知道你是怎么设置的.可以这样试试,使用ADOQuery查询,提供数据
ADOQuery.Connection=ADOConnection;
DataSetProvider.DataSet:=ADODataSet;这个改成ADOQuery
ClientDataSet.ProviderName=DataSetProvider;
with ADOQuery do
begin
Close;
SQL……
作者: kaikai_kk 发布时间: 2011-11-23
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28