#mysql #stored-procedures #phpmyadmin
#mysql #хранимые процедуры #phpmyadmin
Вопрос:
Я не могу создать хранимую процедуру с помощью phpMyAdmin, и я не думаю, что проблема в синтаксисе .. может быть, проблема в разделителе? вот часть моего кода:
BEGIN
SET
@statement = CONCAT(
'SELECT
`usr`.`FIRST_NAME` AS firstName,
`usr`.`LAST_NAME` AS lastName,
`usr`.`EMAIL` AS email,
`usr`.`MOBILE_NUM` AS mobileNum,
`sch`.`SUNDAY` as sunday,
`sch`.`MONDAY` as monday,
FROM
(
`Appian`.`LDA_USER_DETAILS` `usr`
RIGHT JOIN `Appian`.`LDA_DRIVER_DETAILS` `sch`
ON `usr`.`USER_DETAILS_ID` = `sch`.`USER_DETAILS_ID`
AND
`sch`.`DRIVER_DETAILS_ID` IS NOT NULL
)
Where 1=1',
`searchText`,
`groupByText`,
`orderByText`
);
PREPARE
stmt
FROM
@statement;
EXECUTE
stmt;
DEALLOCATE
PREPARE
stmt;
END
Я пытаюсь использовать этот код в phpMyAdmin:
Но это никогда не работает, возможно, это проблема с разделителем? если да, то как мне следует настроить разделители? Вот сообщение об ошибке, которое я получил:
Я не очень знаком с phpMyAdmin, пожалуйста, направьте меня, спасибо!
Комментарии:
1. Игнорирование разделителей на данный момент строки
searchText
,groupByText
,orderByText
не входят в заключительную кавычку для @statement и выдают ошибки неизвестного столбца — также они не имеют большого смысла, поскольку сравнения не происходит.2. @P.Salmon Спасибо! проблемы, которые я обнаружил, связаны с неправильным значением ` `.