【发布时间】:2018-06-11 19:50:52
【问题描述】:
我有一个艺术品库存表。它将联系人 ID 保存为 code39 条形码。在初始化时,我需要能够根据联系人表中包含的 id 检查此 id。每个联系人都有自己的 id,并被指定一个类型。初始化代码需要填充艺术品列表,但只能由类型为“storage”、“show”和“client”的联系人拥有的作品。我可以使用 VBA,因为我没有很多编码时间来编写 Microsoft SQL 语句,但我想把 sql 写下来。一个联系人可以被未定义数量的艺术作品引用。
这些语句不起作用:\
strSQL = "SELECT [art_inventory_piece], [art_inventory_contact_id_code39]" & _
" FROM [Client Art Inventory] INNER JOIN [Client Contact]" & _
" ON [Client Art Inventory].art_inventory_contact_id_code39 = [Client Contact].contact_id_code39" & _
" WHERE [Client Contact].client_type = 'storage' or [Client Contact].client_type = 'show' or [Client Contact].client_type = 'client'"
strSQL = "SELECT [art_inventory_piece], [art_inventory_contact_id_code39]" & _
" FROM [Client Art Inventory]" & _
" WHERE [art_inventory_contact_id_code39]" & _
" in (select [contact_id_code39] from [Client Contact] where [contact_type]
= 'storage' OR [contact_type] = 'show' OR [contact_type] = 'client')" & _
" ORDER BY [contact_id] ASC"
【问题讨论】:
-
在这里很难说出你在问什么。你能用简单的英语解释这段代码的目标是什么吗?在这种情况下初始化是什么意思?
-
“这些语句不起作用”是什么意思。你得到了错误的数据,还是没有数据,或者你得到了一个错误,如果是这样,那是什么?另外,你用的是什么数据库?您谈论 Microsoft SQL,但也将其标记为 mysql。
-
ODBC MySQL 后端/访问前端/Microsoft SQL 语句构造记录集。很直接。我经历了多次迭代(12)大多数错误是“参数太少”。语法错误非常明显。我很确定我的问题非常基本。
-
如果在查询设计器中重构查询,SQL-View 代码是什么?
-
我得试一试。我根本没有使用查询生成器,因为我正在通过,它似乎从来没有相关。但我没有使用它,所以也许它是。在这个项目(下周)结束时,我将回到 C++,无论如何我都不会拥有它。我已经 4000 小时没有使用它了。