0

我的查询是这样的,

... ON (`Test`.`id` = `Form`.`close_`%)...

它抛出错误说Syntax error or access violation: 1064。我正在使用 cakePHP。我尝试使用

$field_name='close_%';
Sanitize::clean(utf8_encode($field_name),array('encode' => false));

我什至也试过mysql_real_escape_string()

我的专栏名称是close_%

但它仍然没有奏效。如何在使用 CakePHP 的查询中绕过带有 % 符号的列名?

4

1 回答 1

0

这些Sanitize函数用于处理数据,而不是列名,并且mysql_real_escape_string在这里肯定是一种绝望的行为,是为同样的事情而设计的。

您想要做的是将您的列指定为:

`close_%`

确保将整个列名放在反引号内。

老实说,你一开始就不应该在列名中出现这样的垃圾。这很烦人。

于 2014-09-09T15:22:16.470 回答