连接查询引用表名会导致问题吗?

时间:2014-08-09 16:31:42

标签: sql ms-access

我有一个SQL查询(与MS Access和C#一起使用),在where子句中引用带有列的表名,这会导致错误。当我删除表名时,它工作正常,但看起来如果你更具体,它会更好吗?

任何人都有任何想法,为什么会这样?

有问题的SQL查询:

SELECT profiles.profile_id, 
       profiles.full_name, 
       shifts.start, 
       shifts.stop, 
       shifts.start_log,
       shifts.stop_log,
       shifts.start_notes, 
       shifts.stop_notes 
FROM shifts,
     profiles 
WHERE profile.full_name=@full_name AND 
      shifts.profile_id=profiles.profile_id;

我必须将WHERE子句中的"profile.full_name=@full_name"更改为"full_name=@full_name",即删除表名"profile"

这个问题来自另一个SO问题here

1 个答案:

答案 0 :(得分:0)

您的查询从名为profiles的表中提取信息,因此未定义profile.full_name,因为查询中没有名为profile的表(或别名)。 profiles.full_name可能会更好。