0

嗨,我正在尝试使用以下脚本从 magento 数据库中获取数据,但我正在尝试以下错误

您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以在第 15 行的 ': Description --104: Meta Description --506: Anahi's Tip --1067: Size & Fit ' 附近使用正确的语法

$conn1 = mysql_pconnect("db.aviesta.com","gys",'d3v3l0p3r$') or die ("Error In Connetion Databse" . mysql_error());
mysql_select_db("customer_transaction_dev",$conn1);
//db Connection end
$select=mysql_query("SELECT DISTINCT A.entity_id AS productID,
A.sku, A.created_at, B.value AS Price,
C.value AS Description,
E.qty AS Quantity,
F.stock_status,
H.Value AS imageURL
FROM catalog_product_entity A
INNER JOIN catalog_product_entity_decimal B
ON A.entity_id=B.entity_id AND B.store_id=5
INNER JOIN catalog_product_entity_varchar C
ON A.entity_id=C.entity_id AND C.attribute_id=105 --Description
INNER JOIN catalog_product_entity_text D
ON A.entity_id=D.entity_id
AND D.attribute_id= 97
--97: Description
--104: Meta Description
--506: Anahi's Tip
--1067: Size & Fit
--1068: Style Ideas
INNER JOIN cataloginventory_stock_item E
ON A.entity_id=E.product_id
INNER JOIN cataloginventory_stock_item F
ON A.entity_id=F.product_id AND F.website_id=2
INNER JOIN catalog_product_relation G
ON A.entity_id=G.parent_id
INNER JOIN catalog_product_entity_varchar H
ON A.entity_id=H.entity_id
AND H.attribute_id =106 --Image
WHERE A.attribute_set_id IN (70,71)
AND A.entity_id=26179' ") or die(mysql_error());

请告诉我我在哪里做错了

4

1 回答 1

3

双破折号注释需要一个空格。

错误的:

--97: Description

正确的:

-- 97: Description

http://dev.mysql.com/doc/refman/5.5/en/comments.html


回复您的评论:

WHERE A.attribute_set_id IN (70,71)
AND A.entity_id=26179' 

在查询的第 30 行的 WHERE 子句末尾有一个杂散的单引号。SQL 解析器从 SQL 语句的开始计算行数,而不是从文件的开始。


唯一发生的地方Image是这里:

ON A.entity_id=H.entity_id
AND H.attribute_id =106 --Image

这是另一种情况,在双破折号注释后需要一个空格。

在查询的前面似乎还有一个这样的案例:

ON A.entity_id=C.entity_id AND C.attribute_id=105 --Description

我针对一些空表测试了查询,一旦通过添加空格更正了所有注释,查询就起作用了。

于 2013-02-05T06:37:24.400 回答