PostgreSql PHP query #1: SQLSTATE[42601]: Syntax error:


PostgreSql PHP query #1: SQLSTATE[42601]: Syntax error:

我尝试从我设置艺术家的专辑中实现搜索。我从形式中得到变量我提出疑问。我成功地从表单中获取了变量。

$words = $_REQUEST['SQLfield'];
$tempquery =  "SELECT * FROM album WHERE to_tsvector(artist) @@ to_tsquery('$words')";
do_sql($tempquery);

当我搜索例如Jimi Hendrix时,结果是:

query #1: SQLSTATE[42601]: Syntax error: 7 ERROR: syntax error in tsquery: "Jimi Hendrix "

我没有在PostgreSQL中使用全文搜索,但在快速扫描文档后,我认为你应该使用plainto_tsquery函数而不是to_tsquery,因为to_tsquery期望'jimi & hendrix'plainto_tsquery将接受'Jimi Hendrix'等短语。