Sql 为什么保存数据会导致不存在字段“ERROR_CODE”的值无效?
在DelphiXE中,我有一个TClientDataSet,它从一个TADOQuery中获取数据,我在它后面添加了一个新条目。代码如下所示:Sql 为什么保存数据会导致不存在字段“ERROR_CODE”的值无效?,sql,delphi,ado,Sql,Delphi,Ado,在DelphiXE中,我有一个TClientDataSet,它从一个TADOQuery中获取数据,我在它后面添加了一个新条目。代码如下所示: with DataModule.MyClientDataSet begin Append; FieldByName('ID').AsInteger := SomeID; FieldByName('STRING').AsString := SomeString; FieldByName('DATE').AsDateTime := SomeDa
with DataModule.MyClientDataSet begin
Append;
FieldByName('ID').AsInteger := SomeID;
FieldByName('STRING').AsString := SomeString;
FieldByName('DATE').AsDateTime := SomeDate;
Post;
ApplyUpdates(-1);
end;
客户端数据集背后的SQL是一个简单的
挑选*
从mytable
其中x=:x
和y=:y
其中x和y是字符串
变量的值都设置好了,我能看到的唯一不规则的事情是日期设置为1899-12-30
以及对ApplyUpdate-1的调用;导致以下异常:
-2147217900不是字段“错误代码”的有效值。允许的范围为0到4294967295
该表没有列错误代码。那么这个错误消息的真正含义是什么呢?Delphi XE中的DataSetProvider中有一个bug,它是通过一个修补程序修复的 Delphi XE2中也出现了相同的错误,并通过更新3修复了该错误 下面是Delphi XE的另一份关于此缺陷的QC报告
Delphi XE中的DataSetProvider中存在一个bug,该bug已通过其一个修补程序修复 Delphi XE2中也出现了相同的错误,并通过更新3修复了该错误 下面是Delphi XE的另一份关于此缺陷的QC报告
否,该表没有任何触发器。您是否指定了这些参数,我的意思是x和y?是否指定了x和y。否,该表没有任何触发器。您是否指定了这些参数,我的意思是x和y?是否指定了x和y。热修复程序工作正常。谢谢我在问题中添加了我的Delphi版本,并从您的答案中删除了该问题。我很高兴这有助于您解决问题。当您下次遇到奇怪的错误时,这只是一个小提示,它似乎不是源于您的代码。使用谷歌!这就是我如何为您找到答案的方法:-在我询问之前,我确实使用DuckDuckGo进行了搜索,但似乎我没有使用正确的关键字,因为修补程序页面不在搜索结果中。有时使用关键字不会返回正确答案,特别是如果这些关键字经常用于其他用途。在这种情况下,有时可以将整个错误消息作为搜索查询输入。这正是我得到这个答案所做的。修补程序成功了。谢谢我在问题中添加了我的Delphi版本,并从您的答案中删除了该问题。我很高兴这有助于您解决问题。当您下次遇到奇怪的错误时,这只是一个小提示,它似乎不是源于您的代码。使用谷歌!这就是我如何为您找到答案的方法:-在我询问之前,我确实使用DuckDuckGo进行了搜索,但似乎我没有使用正确的关键字,因为修补程序页面不在搜索结果中。有时使用关键字不会返回正确答案,特别是如果这些关键字经常用于其他用途。在这种情况下,有时可以将整个错误消息作为搜索查询输入。这正是我得到这个答案的原因。