有一个Adoquery举办了newrecord活动。

在该过程中,我尝试将数据自动添加到另一个表中。数据是在取消时需要并在客户端数据集中处理的几行。

在LOC

其他adoquery.insert;

我发现Adoquery未能将NULL插入非null字段中的错误。我处于插入模式,但是我从未要求Delphi发布!我找不到它为什么发布。

编辑:您能帮我找到有关此问题的提示吗?

更多澄清:

adoquery.onnewrecord();

开始

clienddataset.insert; //这里要发布Adoquerypost。客户端处于浏览状态的位置

结尾;

编辑:

这个错误没有意义!看看堆栈跟踪:

  • 之前
  • 新纪录
  • myfunc

MyFunc确实会引起插入物的newRecord。

有帮助吗?

解决方案 2

答案来自表之间的连接。

Adoquery.datasource设置了客户端数据集。

这种疯狂的伤害很大,没有提示德尔菲。

其他提示

我对Tadoquery不太熟悉,但我知道如何跟踪这样的错误。首先,如果您尚未设置它,请进入项目选项并打开“编译”选项卡下的调试DCU,然后运行完整的构建并运行它。当您在调试器中获得该异常报告时,请命中率,您应该在tadoquery或其一个子对象之一的代码中最终进入。尝试检查呼叫堆栈。如果您查找几个电话,您可能会发现您所做的事情正在调用其他正在调用帖子的东西。请按照堆栈跟踪返回,直到您达到代码,并了解正在发生的事情,如果您分析一点,您应该找到某种方法来防止问题。

话虽如此,让我快速猜测您的问题原因:当您在数据集中呼叫插入时,如果数据集已经处于附录模式,则因为您先前称为插入或附录,并且没有跟进帖子,在设置新的行供您处理之前,它将调用帖子。也许这是您发生的事情?

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top