我有一个非常长的插入查询,其中有超过40个字段(来自'继承的'Foxpro数据库)使用OleDb处理,产生异常'数据类型不匹配'。有没有办法知道查询的哪个字段产生此异常?
到目前为止,我正在使用强制暴力方法来减少插入物上的字段数量,直到找到有缺陷的字段,但我想它必须是更直接的方法才能找到它......
答案 0 :(得分:2)
除了猜测哪个问题可能出现问题,排除其他20个并进行测试,并重复该还原过程直到您点击它之外,没有任何捷径。
或者查看DBF中的表结构并确保字段类型与您正在使用的OleDB类型匹配。 .NET类型如何映射到Visual FoxPro表字段类型的详细信息是here.
如果你有权访问Visual FoxPro IDE,你可以通过敲一个小程序甚至只是在命令窗口中执行它来更快地做到这一点。
答案 1 :(得分:0)
您没有告诉我们您使用的语言,因此我们可以提供样本来处理它。
基本上你要做的是: 获得结构, 解析insert语句并获取值, 比较数据类型。
这个检查应该是一个简短的代码。