mysql错误1066
Posted
技术标签:
【中文标题】mysql错误1066【英文标题】:mysql error 1066 【发布时间】:2012-12-04 20:26:54 【问题描述】:$id=$_GET["id"];
$query= "
SELECT
blomster_produkter.blomster_produkt_id,
blomster_produkter.blomster_produkt_navn,
blomster_produkter.blomster_produkt_pris
FROM
blomster_produkter
INNER JOIN blomster_produkter ON
blomster_produkter.FK_blomster_produkt_id=blomster_produkter.blomster_produkt_navn
blomster_produkter.FK_blomster_produkt_id=blomster_produkter.blomster_produkt_pris
blomster_produkter.FK_blomster_produkt_id=blomster_produkter.blomster_produkt_id
WHERE FK_blomster_kategori_id=$id";
为什么这会给我一个 mysql 错误 1066?
(如果我遗漏了一些重要的东西,也很抱歉,这是我在 *** 上提出的第一个问题)
【问题讨论】:
什么错误?可以写这个错误_ 这是诺曼入侵的错误 【参考方案1】:0.1 秒的谷歌搜索:“mysql 错误 1066” - 不是唯一的表名/别名
FROM
blomster_produkter <--table #1
INNER JOIN blomster_produkter ON <-table #2
如果不使用别名,您不能将表连接到自身,或在连接中重复使用相同的表名:
FROM blomster_produkter
INNER JOIN blomster_produkter AS someothername ON
^^^^^^^^^^^^^^^^^--- the alias
然后根据需要在连接条件中更改表引用。
同时,请注意您对sql injection attacks 持开放态度。享受您的服务器 pwn3d。
【讨论】:
【参考方案2】:错误 1066 是“不是唯一的表/别名”
这是因为你是在没有创建别名的情况下加入一个表,你必须做这样的别名:
SELECT
bp1.blomster_produkt_id,
bp1.blomster_produkt_navn,
bp1.blomster_produkt_pris
FROM
blomster_produkter bp1
INNER JOIN blomster_produkter bp2 ON
bp1.FK_blomster_produkt_id=bp2.blomster_produkt_navn [...]
【讨论】:
以上是关于mysql错误1066的主要内容,如果未能解决你的问题,请参考以下文章
错误代码:1066。不是唯一的表/别名:'ordertbl' - 无法执行内部连接 MYSQL
帮助 MySQL 查询语法:错误 #1066 - 不是唯一的表/别名
为啥错误 #1066 - 不是唯一的表/别名:'cat_rapoarte'