Excel ODBC SQL语句抛出错误'[ODBC EXCEL驱动程序]数据类型标准不匹配

时间:2015-04-21 12:53:47

标签: sql excel odbc

下面的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)"**

1 个答案:

答案 0 :(得分:0)

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

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