我不用DBNavigator控件,直接自己用Botton做数据库操作控件增加一条记录
begin
DBGrid1.DataSource.DataSet.Insert;
end;删除一条记录
begin
DBGrid1.DataSource.DataSet.Delete;
end;保存
begin
DBGrid1.DataSource.DataSet.Post;
end;修改当前记录
begin
DBGrid1.DataSource.DataSet.Edit;
end;跳到首条
begin
DBGrid1.DataSource.DataSet.FindFirst;
end;跳到上一条
begin
DBGrid1.DataSource.DataSet.FindPrior;
end;跳到下一条
begin
DBGrid1.DataSource.DataSet.FindNext;
end;跳到末条
begin
DBGrid1.DataSource.DataSet.FindLast;
end;当前行在第一条的时候,执行DBGrid1.DataSource.DataSet.FindPrior;会出错
当前行在最后一条的时候,执行DBGrid1.DataSource.DataSet.FindNext;会出错
当前没有新增记录的时候,执行DBGrid1.DataSource.DataSet.Post;会出错
执行DBGrid1.DataSource.DataSet.EDit还是无法修改当前行的记录
当前没有记录的时候,执行DBGrid1.DataSource.DataSet.Delete会出错
请问解决以上错误如何解决?
begin
DBGrid1.DataSource.DataSet.Insert;
end;删除一条记录
begin
DBGrid1.DataSource.DataSet.Delete;
end;保存
begin
DBGrid1.DataSource.DataSet.Post;
end;修改当前记录
begin
DBGrid1.DataSource.DataSet.Edit;
end;跳到首条
begin
DBGrid1.DataSource.DataSet.FindFirst;
end;跳到上一条
begin
DBGrid1.DataSource.DataSet.FindPrior;
end;跳到下一条
begin
DBGrid1.DataSource.DataSet.FindNext;
end;跳到末条
begin
DBGrid1.DataSource.DataSet.FindLast;
end;当前行在第一条的时候,执行DBGrid1.DataSource.DataSet.FindPrior;会出错
当前行在最后一条的时候,执行DBGrid1.DataSource.DataSet.FindNext;会出错
当前没有新增记录的时候,执行DBGrid1.DataSource.DataSet.Post;会出错
执行DBGrid1.DataSource.DataSet.EDit还是无法修改当前行的记录
当前没有记录的时候,执行DBGrid1.DataSource.DataSet.Delete会出错
请问解决以上错误如何解决?
解决方案 »
- 新手小白求教点数组问题
- 菜鸟用delphi+sqlserver2000做了个程序,用到了花生壳,速度慢的很,请高手指教一下。。
- 如何能列举出安装的全部网络协议,EnumProtocols在DELPHI中的参数如何声明?
- 将一个XML文档复制到另一个XML的一个节点上去如果做???
- 数据库有关insert和delete的问题
- 如何将汉字转换成拼音,100分
- 用Indy的IdBase64Decoder解码??请各位看下面例子。
- 关于tmemo控件的内存释放的问题
- Delphi和SQL Server:Division by zero occurred错误
- InstallShield Express 反安装的问题!
- 用DELPHI怎样播RM,RMVB,MP3,MPEG4啊.
- delphi http访问问题,高手进(急)
begin
if not DataSet.eof then
DBGrid1.DataSource.DataSet.FindNext;
end;跳到上一条
begin
if not DataSet.bof then
DBGrid1.DataSource.DataSet.FindNext;
end;加上DBGrid1.setfocus 使DBGrid1获得焦点
//执行数据库操作
except
end;
怎么捕捉错误呀?
我这样
try
//执行数据库操作
exceptend;出错后仍旧不能执行下去我想要的是出错后,程序能够报错但不中断执行
就是指向首尾纪录啊~
就想楼上的 张 的方法就可以了啊~
上移一条记录
if not DBGrid1.DataSource.DataSet.bof then
begin
DBGrid1.DataSource.DataSet.FindPrior
end
else begin
DBGrid1.DataSource.DataSet.FindFirst;
end;
下移
if not DBGrid1.DataSource.DataSet.eof then
begin
DBGrid1.DataSource.DataSet.FindNext;
end
else begin
DBGrid1.DataSource.DataSet.Findlast;
end;
POST
if DBGrid1.DataSource.DataSet.changecount<>0 then
begin
DBGrid1.DataSource.DataSet.Post;
end;
修改
if not (DBGrid1.DataSource.DataSet.state in[dsinset,dsedit]) then
DBGrid1.DataSource.DataSet.edit;
DBGrid1.DataSource.DataSet.post;
删除
if not DBGrid1.DataSource.DataSet.isempty then
DBGrid1.DataSource.DataSet.delete