特定のパターンで終了するMySqlテーブルの行を検索している次のdbクエリがあります。ワイルドカードと配列の置換でMysqlエラーが発生する
$res = db_query('SELECT identifier FROM {rules_scheduler} WHERE identifier LIKE %:schid', array(':schid' => '_' . $sch_id));
foreach ($res as $rec) {
scheduler_delete_schedule($component, $rec->identifier);
}
しかし、これは次のようなエラーになり...
PDOException:SQLSTATE [42000]:構文エラーまたはアクセス違反:1064 あなたのSQL構文でエラーが発生しています。右側の構文で がMySQLサーバーのバージョンに対応していることを確認し、 の1行目付近の '%' _ 591 ''を使用してください。SELECT ID FROM {rules_scheduler} WHERE identifier LIKE%:schid;アレイ([:SCHID] => _591) _callback_delete_scheduled_notifications()内は
だから、のように見える私:SCHIDトークンが正しく_591に置き換えますが、%との間の単一の反転にコンマがあるように思われていますアンダースコアなぜ私は私の人生のために傾ける!
私が思うに、クエリは\ '%のようにする必要があります。子供\ 'です。 –
セミコロンは何を意味しますか? – Collins
申し訳ありませんが、私は: –