2013-04-25 137 views
0

我想在PHP中编写一行代码,这可能是一个愚蠢的问题,但我是编码新手。我得到这个错误,当我尝试运行我的PHP页面:如何在PHP中为SQL数据库设置表名称为相关名称?

“错误查询准备/执行阵列([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 .. go figure!

我试图研究它,但我一直在找到设置相关名称的复杂示例。任何帮助是极大的赞赏!

回答

1

看看这篇文章了解如何做到这一点的更多细节。这归结于Ryan所展示的内容,但给出了更多细节。

http://msdn.microsoft.com/en-us/library/ms187455(v=sql.90).aspx

而且这里是如何与大量的实例正确使用这些另一个良好的阅读。

http://sqlblog.com/blogs/aaron_bertrand/archive/2009/10/08/bad-habits-to-kick-using-table-aliases-like-a-b-c-or-t1-t2-t3.aspx

+1

谢谢!这些例子肯定有帮助。一些如此简单,但我不熟悉它。 – Kelley 2013-05-08 00:12:42

0

您只需要为使用action表的每种情况使用唯一的别名。你没有展示你的查询,但它会是这样的:

SELECT * 
FROM ACTION a1 
INNER JOIN ACTION a2 ON ... 

这样,用途相同的表的每个实例清楚地查询分析器。

相关问题