gpt4 book ai didi

mysql - SQL 查询在我的框架中出错,但在 MySQL Workbench 中正常

转载 作者:行者123 更新时间:2023-11-30 00:17:55 24 4
gpt4 key购买 nike

这很奇怪,因为我的查询执行并在 mysqlworkbench 中返回正确的结果,但是在我的应用程序中我得到了

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ') as category FROM products p ' at line 1

它在使用 datamapper 的 codeignitor 中。

$query="

SELECT CONCAT_WS('~', c3.name, c2.name, c1.name) as category
FROM products p
LEFT JOIN metadata m ON m.parent_id = p.id
LEFT JOIN category0_table c0 ON c0.id = m.value
LEFT JOIN category1_table c1 ON c1.id = c0.parent_ID
LEFT JOIN category2_table c2 ON c2.id = c1.parent_ID
LEFT JOIN category3_table c3 ON c3.id = c2.parent_ID
WHERE p.id =5
AND m.key = 'my_category'";

$model = new Product_model();
$results = $model->query($query);
return $results;

我不认为出了什么问题,我尝试删除 concat 语句。

最佳答案

为什么不使用事件记录?它使您的应用程序能够在运行多种不同数据库(包括(mysql、mssql、postgress、oracle))的任何平台上灵活运行。在我看来,最好多练习一下。如果有一天您想在 Windows 服务器上运行您的应用程序怎么办?只需在 IIS 中安装 php 即可。或者,如果您已经在 Microsoft 服务器上运行 IIS 中带有 php 的 SQL Server,并且您的 IT 部门需要削减成本,该怎么办?你可以说“嘿,我知道一种方法,我们可以从预算中削减数千美元,并且不会损失任何东西,只需开源!!”然后你得到晋升等等……你知道该怎么做。

$this->db->select("CONCAT_WS('~',c3.name,c2.name,c1.name) as category")->
from("products p")->
join("metadata m','m.parent_id = p.id","left")->
join("category0_table c0","c0.id=m.value","left")->
join("category1_table c1","c1.id=c0.parent_ID","left")->
join("category2_table c2","c2.id = c1.parent_ID","left")->
join("category3_table c3","c3.id = c2.parent_ID","left")->
where("p.id","5")
where("m.key","my_category");

$query = $this->db->get();

if($query->num_rows() >= 1) {
return $query->result();
}else {
return FALSE;
}

关于mysql - SQL 查询在我的框架中出错,但在 MySQL Workbench 中正常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23504825/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com