将数据插入Access数据库时,LabVIEW报错-2147217900

更新 Jul 3, 2023

适用于

软件

  • LabVIEW Database Connectivity Toolkit

问题详述

使用DB Tools Insert Data.vi( 函数»数据库 )将数据插入现有的Microsoft Access数据库时,为什么会出现错误-2147217900

解决方案

通常,当表或列的名称包含空格(即Table 1或Column A)或其他无效字符时,会生成此错误。如果表或列的名称中有空格,则应删除空格(如TableA )或将其替换为下划线字符(即Table_A )。在LabVIEW和Microsoft Access中的名字都需要更改。

注意:确保数据库的文件路径中没有无效字符。因为这也可能引起这种错误。最常见的是路径Documents and Settings,包含空格且会引起错误。

虽然Microsoft Access允许在数据库表和列名称中使用空格,但LabVIEW数据库工具集使用ANSI SQL格式,该格式不允许在SQL语句的参数中使用空格(大多数SQL格式也不允许在参数语法中使用空格)。更多关于ANSISQL标准的信息,请参阅Database Connectivity Toolkit user manualSQL快速参考部分。

若想插入或者访问表格和列名带有空格的,可以在名字上添加方括号(例如:[Table A]),使用字符串的拼接功能。

注意:使用Access或者Jet保留字作为列名也会出现这个错误。例如,Index,Date,Time,Position,或者TimeStamp。(见链接:Microsoft KnowledgeBase: Access 保留字和符号)。之前没有被保留的词在Access或者Jet以后的版本中可能会被保留,导致程序不能运行。

注意:请检查并确认是否正在调用正确的数据库路径。检查数据库中的内容的一种好方法是使用查找范例中的Get Database Information.vi并搜索数据库

相关信息

DB Tools Insert Data.vi将数据插入数据库表和/或由连接到其输入的字符串指定的错误-2147217900是在这些字符串的语法无效时生成的SQL语法错误。