带有/在字段名称中的 ODBC 链接数据库

Posted

技术标签:

【中文标题】带有/在字段名称中的 ODBC 链接数据库【英文标题】:ODBC linked database with / in field name 【发布时间】:2014-10-10 08:29:05 【问题描述】:

我正在尝试使用Machine Data Source 在 MS Access 2007 中链接一个我无法控制的 ODBC 数据库 - 我不知道这是否相关,据我所知,这意味着已设置访问权限仅在这台计算机上 -。

当我按照向导进行操作时,我可以选择表格,但是当需要链接它时,我会收到错误消息:

The database engine can't find 'WTD.DATAPOINT_5/1000'. Make sure it is a valid parameter or alias name, that it doesn't include characters or punctuation, and that the name isn't too long

我认为问题在于其中一个字段被命名为 WTD.DATAPOINT_5/1000 并且 Access 将 / 解释为它自己的符号。

问题是我什至不需要存储在此列中的数据。现在我不知道该走哪条路。

    找到一种方法告诉 Access / 是字段名称的一部分。 (极不可能) 使用内置 Access 函数仅检索表中的某些字段。 使用 vba 手动设置连接并仅检索部分字段。如果这是要走的路,我想要一些指示,因为我不知道从哪里开始。

【问题讨论】:

【参考方案1】:

解决方案 2:使用直通 SQL 查询。

Everything is explained in this tutorial.

解决方案 3:我尝试在 VBA 中直接连接。下面的代码对其他表来说就像一个魅力,但对于包含有问题的字段的表,我仍然收到错误。

Dim ConnectionStr As String
ConnectionStr = "ODBC;Driver=Oracle in OraHome92;Dbq=BLA1;Uid=BLA2;Pwd=BLA3;"
DoCmd.TransferDatabase acImport, "ODBC Database", ConnectionStr, acTable, "MyTable", "NewTable"

【讨论】:

以上是关于带有/在字段名称中的 ODBC 链接数据库的主要内容,如果未能解决你的问题,请参考以下文章

ODBC 链接表将 Tinyint 字段转换为是/否

oracle odbc连接sqlserver 无法查询字段

获取最后插入记录的 ID - Access DAO、ODBC、SQL Server 2008 身份字段

Access ODBC 子表单字段太小而无法编辑

如何用arcgis修改shp数据字段名称

第五课(基础)