【问题标题】:Select query using *使用 * 选择查询
【发布时间】:2015-05-01 10:38:50
【问题描述】:

我正在构建一个表单,它需要从我在下面构建的两个查询中显示的表“tblContacts”中提取值。我不明白为什么在我的表单上构建我的控制文本框时,为什么第一个查询工作正常,但第二个查询不允许我从联系人表中提取特定值。例如,使用第二个查询,我无法在字段 tblContacts.Level 中获得正确的值。但是,当我构建指定的查询(第二个示例)时,一切正常。我的第一直觉告诉我,表单上的属性中有一些东西需要更改,但直到现在,我都没有运气。

示例 1(不起作用)

sql_get = " SELECT * FROM [tblContacts] INNER JOIN [tblteams] ON [tblcontacts].[Team] = [tblteams].[ID]  WHERE [tblTeams].[team]= '" & cboDepartments.Value & "'"
Me.frmstaticdatadepartments08.Form.RecordSource = sql_get

示例 2(工作正常)

sql_get = "SELECT tblContacts.CompleteName, tblContacts.CurrentPosition, tblContacts.Level, tblContacts.ContractType, tblContacts.JobTitle, tblContacts.ID, tblContacts.Foto FROM tblContacts INNER JOIN tblTeams ON tblContacts.Team = tblTeams.ID WHERE [tblTeams].[team]= '" & cboDepartments.Value & "'"
Me.frmstaticdatadepartments08.Form.RecordSource = sql_get

【问题讨论】:

  • 我们缺少细节。还有哪些其他代码可以处理查询结果? SQL 语句本身似乎很好。另外,您遇到错误了吗?调试器会告诉你什么吗?
  • 每个表的列名重复可能是个问题。例如,如果您在 tblContacts 中有列 id,在 tblteams 中也有 id,则选择所有 * 将生成每个表的列 id 重复的结果
  • 那么也许(这很愚蠢)但你可以试试:SELECT tblContacts.*
  • 之前有一条关于重复列名的错误消息。我认为 Avi 正在做某事。
  • 既然您提出了要求,那么对解决方案给予 scraaappy 功劳的一种方法是删除您的答案。然后他可以自己发布,您可以投票并标记为答案。

标签: sql ms-access vba ms-access-2010


【解决方案1】:

这样就解决了:
sql_get = "SELECT tblContacts.*, tblContacts.CurrentPosition, tblContacts.Level, tblContacts.ContractType, tblContacts.JobTitle, tblContacts.ID, tblContacts.Foto FROM tblContacts INNER JOIN tblTeams ON tblContacts.Team = tblTeams.ID WHERE [tblTeams].[team]= '" & cboDepartments.Value & "'"
PS:谢谢你们的礼貌:)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-05-21
    • 2012-09-03
    • 1970-01-01
    • 2019-10-06
    • 2018-09-28
    • 2012-04-13
    • 2023-03-28
    • 2022-01-17
    相关资源
    最近更新 更多