2016-05-14 4 views
0

исходного запроса SQL, который работает нормально ..преобразовать следующий SQL запрос в хранимой процедуре

SELECT image_path FROM `design_details` WHERE UPPER(image_path) LIKE UPPER('%01.jpg%') 

хранимая процедура для соответствующих QUERY;

CREATE DEFINER=`root`@`localhost` PROCEDURE `checkImageNameExists` (IN `in_image_path` VARCHAR(1000)) 
BEGIN 

SELECT image_path FROM `design_details` WHERE UPPER(image_path) LIKE UPPER('%'+in_image_path+'%'); 

END$$ 

Я могу успешно создать хранимую процедуру. Когда я вызова хранимой процедуры, как

CALL checkImageNameExists('01.jpg'); through phpmyadmin 

Это дает ERROR СЛЕДУЮЩИМ :: Статический анализ:

1 были обнаружены ошибки в процессе анализа.

Нераспознанное ключевое слово. (Рядом с "ON" в положении 25) SQL-запрос: Править

SET FOREIGN_KEY_CHECKS = ON; 

MySQL говорит: Документация

# 2014 - Команды из синхронизации; вы не можете запустить эту команду в настоящее время

Я не могу понять error.Please помочь

ответ

0

Попробуйте изменить это в хранимой процедуре

SELECT image_path FROM `design_details` WHERE UPPER(image_path) LIKE UPPER('%'+in_image_path+'%'); 

в

SELECT image_path FROM `design_details` WHERE UPPER(image_path) LIKE CONCAT('%', UPPER(in_image_path) , '%'); 
Смежные вопросы