Excel ODBC SQL 语句引发错误"[ODBC EXCEL 驱动程序] 条件中的数据类型不匹配



下面的SQL语句将值插入到新工作表(TempPoints)中的新表中。如果我删除了语句的最后一部分(粗体),则查询运行正常,但当我将其添加回语句中时,我会收到以下错误消息;'[ODBC EXCEL驱动程序]条件中的数据类型不匹配。

我已经在SQLServer中复制了表和查询,它运行正常,正如预期的那样,这证明了完整的语句是正常的。这是Excel ODBC驱动程序的限制吗??

提前谢谢。

strSQL = "INSERT INTO [TempPoints$] (REFP, PointItemRef, LoadItemRef, PointDES, Iotype, Subtype, Notes) " & _
"SELECT " & tempref & ", [PointsDB$].ItemRef, [LoadstoPointsDB$].LoadRef, [PointsDB$].PointDES, [PointsDB$].Iotype, [PointsDB$].Subtype, [PointsDB$].Notes " & _
"FROM [LoadsToPointsDB$] INNER JOIN [PointsDB$] ON [LoadsToPointsDB$].PointRef = [PointsDB$].ItemRef " & _
"WHERE [LoadsToPointsDB$].LoadRef = " & moditemref & " AND [PointsDB$].SystemComp = 'Y' " & _
**"AND NOT EXISTS (SELECT * FROM [TempPoints$] WHERE [TempPoints$].PointItemRef = [PointsDB$].ItemRef)"**

感谢那些看过这篇文章的人,但我似乎找到了答案。

以前有一个insert into语句将数据加载到表中,一旦数据被加载到其中,表就将数字存储为文本而不是整数。删除行并确保列的格式设置为整数后,SQL查询开始按预期运行。

最新更新