我有一个ADOQuery1已经查询有了数据,
ADOQuery1.LockType:=ltBatchOptimistic;
ADOQuery1.SQL.Text:='select * from MyTable';
ADOQuery1.Open;
这个时候我在界面上的DBGrid数据区编辑了一条记录
ID Value
1 中国
2 美国
3 加拿大1 //--在编辑之前是’加拿大‘
4 新加坡
这个时候我处理以下过程
procedure TForm1.myproc;
var
q:TADOQuery;
begin
q:=TADOQuery.Create(self);
try
q.Recordset:=ADOQuery1.Recordset;
finally
q.Free;
end;
end;
处理了上一步骤后,我保存数据
ADOQuery1.UpdateBatch(arAll);
大家一定想象不出最后数据库中的结果
ID Value
1 加拿大1 //--这里怎么被替代了
2 美国
3 加拿大 //--我在这里编辑的
4 新加坡
当然如果我不执行过程myproc怎么编辑怎么保存,结果肯定是正确的
ADOQuery1.LockType:=ltBatchOptimistic;
ADOQuery1.SQL.Text:='select * from MyTable';
ADOQuery1.Open;
这个时候我在界面上的DBGrid数据区编辑了一条记录
ID Value
1 中国
2 美国
3 加拿大1 //--在编辑之前是’加拿大‘
4 新加坡
这个时候我处理以下过程
procedure TForm1.myproc;
var
q:TADOQuery;
begin
q:=TADOQuery.Create(self);
try
q.Recordset:=ADOQuery1.Recordset;
finally
q.Free;
end;
end;
处理了上一步骤后,我保存数据
ADOQuery1.UpdateBatch(arAll);
大家一定想象不出最后数据库中的结果
ID Value
1 加拿大1 //--这里怎么被替代了
2 美国
3 加拿大 //--我在这里编辑的
4 新加坡
当然如果我不执行过程myproc怎么编辑怎么保存,结果肯定是正确的
解决方案 »
- 关于DBGRIDeh的同列复制问题。。。。大家一定要帮我啊。。
- 请教日期的问题?
- 二进制问题:如何根据给出的编码(如UCS2编码)得到sqlserver数据库的varbiny字段的字符串信息
- delphi7使用idhttp进行网站post数据出现406错误问题
- 请帮忙!我使用动态创建,但为什么不能显示?
- 如何建立修改读取记录文件??
- 讨论:发布一个软件客户端,运行时首先检测网上是否有更新版本,如果有至UPData……
- 如何将一字符串中的回车键符号换成字符串???
- 如何将文本文件中的空格去掉
- 按什么原则把代码分拆成多个模块
- 如何强制重启XP??
- Delphi 6 中怎么改变 EXE 文件的生成路径——————在线等待!!!
var
q:TADOQuery;
begin
q:=TADOQuery.Create(self);
try
q.Recordset:=ADOQuery1.Recordset.Clone(1);
finally
q.Free;
end;
end;
q.Recordset:=ADOQuery1.Recordset;时 会自动执行First
有唯一关键字
ADO本身就是有很多BUG