このストアド プロシージャが結果を返さない理由
CREATE PROCEDURE `sp_location_selectAllByTermAutoComplete`(
IN _term VARCHAR(99))
BEGIN
SELECT
`title` AS `value`,
`keyword` AS `label`,
`city_id`,
`id` AS `locationtitle_id`
FROM `locationtitle`
WHERE
MATCH(`keyword`) AGAINST(_term IN BOOLEAN MODE)
ORDER BY MATCH(`keyword`) AGAINST(_term IN BOOLEAN MODE) DESC
LIMIT 0, 10
;END//
でもこいつは帰ってきた
SELECT
`title` AS `value`,
`keyword` AS `label`,
`city_id`,
`id` AS `locationtitle_id`
FROM `locationtitle`
WHERE
MATCH(`keyword`) AGAINST('+NEW*' IN BOOLEAN MODE)
ORDER BY MATCH(`keyword`) AGAINST('+NEW*' IN BOOLEAN MODE) DESC
LIMIT 0, 10
入力パラメータは両方とも他と同じです。
他のストアド プロシージャがあり、正常に動作します。
PDO
ストアドプロシージャを実行するために使用しています。
OUT
ストアドプロシージャで使用したことはなく、使用方法の経験もありません。
localhost でストアド プロシージャをテストしたところ正常に動作しましたが、サーバーで動作しない理由がわかりません。
アップデート
私の問題は何かを見つけました。
VARCHAR
入力パラメーターとして持つプロシージャーを呼び出すと、文字列の文字が?
(疑問符) に変わります。
私のデータベースの照合順序はUTF-8で、どのテーブルもUTF-8 です
そして、pdo utf-8ドライバーを追加しましたが、なぜ機能しないのかわかりません
phpMyAdminでストアドプロシージャを呼び出すことさえできません