由于撇号引起的Mysql语法错误

时间:2021-01-05 12:13:31

标签: php mysql

这是我要执行的sql

$get_product   = 'SELECT vend_id, id_product FROM '
                 . _DB_PREFIX_ . 'product WHERE vend_id = ' 
                 . $payload["product"]["id"] . ' LIMIT 1';

$fetch_product = Db::getInstance()->ExecuteS($get_product);

我收到此错误 -

<块引用>

查询错误 (1064):第 1 行“e-bf20-11eb-fc6f-4f4cf048eb57 LIMIT 1”附近的语法错误

用于查询 -

SELECT vend_id, id_product FROM product 
WHERE vend_id = 0242e39e-bf20-11eb-fc6f-4f4cf048eb57 LIMIT 1`

好像是因为撇号。

他们有办法解决这个问题吗?

谢谢

1 个答案:

答案 0 :(得分:0)

参数“vend_id”包含一个字符串,其值需要用引号括起来

$get_product   = 'SELECT vend_id, id_product FROM '
                 . _DB_PREFIX_ . 'product WHERE vend_id = "' 
                 . $payload["product"]["id"] . '" LIMIT 1';
相关问题