【发布时间】:2015-08-20 14:22:04
【问题描述】:
在删除我的表之前打开:
procedure TData_Module.MyTableBeforeDelete(DataSet: TDataSet);
begin
if MessageDlg('Are you sure you want to delete the record written by '+
QuotedStr(MyTable.FieldByName('written_by_who').AsString),mtConfirmation,[mbYes,mbNo],0) = mrYes then
MyTable.Delete;
end;
但是,在尝试时我得到了错误: ...光标在 BOF 位置
发生了什么?数据库是 Accuracer。
编辑:上面的整个代码:)
【问题讨论】:
-
我们肯定需要更多关于您的代码、错误和用例的信息。
-
这就是所有的代码。在删除表之前没有更多内容。只是一个简单的提示。
-
我认为问题在于你在一个事件(OnBeforeDelete?)中调用 Delete ,其中记录已经在被删除的过程中。不要那样做。在开始删除之前获得用户的确认。
-
不确定我是否关注你Martyn...提示是在删除记录之前。还能去哪里?
-
当然还有更多代码。最重要的是,你在什么时候调用这个?在什么程序?那个程序是怎么调用的? Martyn 只是假设可能出了什么问题,因为您没有为代码提供足够的上下文。
标签: delphi accuracerdb