我正在尝试用PHP编写一行代码,这可能是一个愚蠢的问题,但我是编码的新手。当我尝试运行我的php页面时出现此错误:
“查询准备/执行出错。数组([0] =>数组([0] => 42000 [SQLSTATE] => 42000 [1] => 1013 [code] => 1013 [2] => [Microsoft] [SQL Server Native Client 11.0] [SQL Server]对象 FROM子句中的“ACTION”和“action”具有相同的公开名称。 使用相关名称来区分它们。 [message] => [Microsoft] [SQL Server Native Client 11.0] [SQL Server]对象 FROM子句中的“ACTION”和“action”具有相同的公开名称。 使用相关名称来区分它们。 ))“
我的问题是如何使用表名的相关名?我有一个名为“action”的表,我正在尝试编写一个包含内部联接的语句,因此数据库不喜欢我正在尝试在INNER JOIN ACTION
表上执行action
。去图!
我试过研究它,但我一直在寻找设置相关名称的复杂例子。非常感谢任何帮助!
答案 0 :(得分:1)
查看此文章,了解有关如何执行此操作的更多详细信息。它归结为Ryan所展示的内容,但提供了更多细节。
此外,还有很多关于如何正确使用这些例子的好读物。
答案 1 :(得分:0)
您只需要为使用action
表的每种情况使用唯一的别名。您没有显示您的查询,但它会是这样的:
SELECT *
FROM ACTION a1
INNER JOIN ACTION a2 ON ...
这样,查询解析器就可以清楚地了解同一个表的每个实例的预期用途。