Mysql: выражение не булевого типа, указанное в контексте, где ожидается условие, близкое к «rlike» - PullRequest
0 голосов
/ 15 февраля 2012

Мне нужно сопоставить большие строки с полями столбца в mysqlDB.что-то вроде

% ERROR-kkl_ub {}: (от YAMios): Пункт назначения (name = sdasdays.s0sda.rindasdth.sbo98.sbssdao_sad) не зарегистрирован.

я передаю эту строку переменной скажем $ signautre.

и использую эту команду mysql

    $query = "select id, name, status "."from bucket "."where name rlike '$signature'";
    &execQuery($query);

я получаю сообщение об ошибке: FATAL ERROR: Операция не выполнена execQuery () - Ошибка в execQuery.Выражение не булева типа, указанное в контексте, где ожидается условие, близкое к 'rlike'

Я не могу выполнить даже простое сопоставление с использованием "rlike".даже эта команда выдает ошибку с той же фатальной ошибкой.

    $query = "select id, name, status "."from bucket "."where name rlike '^n'";

нужна помощь ...

1 Ответ

0 голосов
/ 15 февраля 2012

Согласно вашим пояснениям в комментариях вам просто нужно =:

$query = "select id, name, status from bucket where name = '" . mysql_real_escape_string($signature) . "'";

В этом случае mysql проверяет, является ли поле name равным , равным $signature

пс: & в &execQuery($query); не имеет смысла

...