MS Access SQL 查询中的这个前缀 (ABF:) 是啥意思?
Posted
技术标签:
【中文标题】MS Access SQL 查询中的这个前缀 (ABF:) 是啥意思?【英文标题】:What does this prefix (ABF:) in the MS Access SQL query mean?MS Access SQL 查询中的这个前缀 (ABF:) 是什么意思? 【发布时间】:2020-01-20 12:58:38 【问题描述】:我的任务是从一个不起眼的 MSACCESS 2000 程序中提取一些数据,该程序与 mysql 表链接,并通过 php 显示数据,以便我们可以永久废弃访问程序。
我没有 Access 经验,我现在已经搜索了几个小时以查找某些数据字段的来源,我最接近的是在表单上生成报告,它向我显示以下内容(表/列名称已编辑):
SELECT [Table1].[somecol],
[Table2].[somecol],
[Table2].[somecol],
[ABF: Table3].[somecol],
[ABF: Table3].[somecol],
[ABF: Table3].[somecol]
FROM
[Table2]
INNER JOIN
([ABF: Table3]
INNER JOIN [Table1]
ON [ABF: Table3].[somecol]=[Table1].[somecol])
ON [Table2].[somecol]=[Table1].[somecol];
ABF: 是什么意思?!?
Table3 没有出现在 mySQL DB AFAIK 中的任何位置。它似乎也没有链接到任何 .mdb 数据中。
可能是 Abfrage(查询)吗?这是德国访问。如果是这样,我到底在哪里找到最后吐出 Table3 的子查询?在这个古老的 Access 中导航是一场噩梦,你无法在全球范围内搜索任何东西......
【问题讨论】:
【参考方案1】:它肯定是 Abfrage(查询)的缩写。
没有Table3
,也没有子查询。
Access db 中有一个名为 ABF: Table3
的查询。
看看它的设计,看看它做了什么。
或者在即时窗口中使用? CurrentDb.QueryDefs("ABF: Table3").SQL
。
【讨论】:
QueryDefs 命令为我做了这件事,我终于可以看到表面下实际发生的事情并在 PHP 中复制查询。非常感谢。【参考方案2】:ABF:
在 MS Access 中没有特殊含义 - 在您的示例中,它只是表/查询名称的一部分,例如:ABF: Table3
。我同样可以创建一个新数据库并保存一个名为 QRY: MyTable
的查询。
正如您所指出的,ABF
可能是Abfrage
的缩写,德语是Query
的缩写,因此我建议您查看数据库中的查询以查找名为ABF: Table3
的查询。
请注意,查询可能会隐藏在 MS Access 中,因此您可能需要在“选项”菜单中启用显示隐藏对象,然后才能在 MS Access 导航中显示查询。
【讨论】:
以上是关于MS Access SQL 查询中的这个前缀 (ABF:) 是啥意思?的主要内容,如果未能解决你的问题,请参考以下文章
SQL / MS Access - 为啥这个 CASE 不起作用?
通过 ODBC 连接到 SQL Server 的 Access 中的 MS SQL 查询