如何在cakephp 3中向sql查询添加`字符
我有一个带有特殊字段名称的表,例如“from”和“order” (此表与其他cms一起使用,我无法更改表结构) 我想用CakePHP3添加一个记录,但我得到了“数据库错误” 似乎cakephp 3的查询没有使用“字符”进行初始化 控制器中的我的代码:如何在cakephp 3中向sql查询添加`字符,cakephp,cakephp-3.0,Cakephp,Cakephp 3.0,我有一个带有特殊字段名称的表,例如“from”和“order” (此表与其他cms一起使用,我无法更改表结构) 我想用CakePHP3添加一个记录,但我得到了“数据库错误” 似乎cakephp 3的查询没有使用“字符”进行初始化 控制器中的我的代码: $tour = $this->Tours->patchEntity($tour, $this->request->data); $this->Tours->save($tour); 生成的SQL是: INSER
$tour = $this->Tours->patchEntity($tour, $this->request->data);
$this->Tours->save($tour);
生成的SQL是:
INSERT INTO tour_tours
(title, from , to, description, duration)
VALUES
('tour title', 'from', 'to', 'description of tour', 7)
SQL查询有语法错误
我该怎么办?您需要添加
“quoteIdentifiers”=>true
在文档中所述的数据源配置中
您可以在app.php上从'quoteIdentifiers'=>false到'quoteIdentifiers'=>true配置数据源 或 您的一列正在使用由保留的列名 正如您可以看到的那样,FROM和ORDER是MYSQL的保留字,您可以尝试从数据库表中更改这些字。希望它能起作用 例如:“tour_tours”表有一个“from”字段,这会导致数据库错误。因此,请更改表中的这些字段,然后重试