1

我的 SQL 查询看起来完全正常,但我不断收到相同的错误消息。

我想要做的是一个简单的搜索,它将查看包含 xml 以进行匹配的数据表。

在此处输入图像描述

错误

致命错误:准备查询时出现问题 (SELECT * FROM property_ids WHERE data LIKE '%test%' ) 您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以获取在 ''%test%' 附近使用的正确语法

当前代码

    $trimmed = "test";

    $results = $this->db->rawQuery("SELECT * FROM propertie_ids WHERE data LIKE %$trimmed%");

我的数据库类

4

2 回答 2

1

像这样试试

<?php
$trimmed = "test";
$results = $this->db->rawQuery("SELECT * FROM propertie_ids WHERE data LIKE ".'%'.$trimmed.'%'."");

从你的数据库类中找到这个。你可以试试这个。

<?php
$trimmed = array('%test%');
$results = $this->db->rawQuery("SELECT * FROM propertie_ids WHERE data LIKE ?",$trimmed);
print_r($results);
于 2013-09-22T17:22:43.867 回答
1

使用参数化查询,让 DB 类担心引用等。更有可能把这些东西做好。

$trimmed = 'test';

$results = $this->db->rawQuery(
    'SELECT * FROM propertie_ids WHERE data LIKE ?',
    array("%$trimmed%")
);
于 2013-09-22T17:29:31.620 回答