Подтвердить что ты не робот

Вызов пользовательской хранимой процедуры из инструкции select mysql

Я пытаюсь вызвать определенную пользователем хранимую процедуру из оператора select и дать мне ошибку. Однако, когда я вызываю системную процедуру, она работает нормально. Есть способ вызова пользовательской процедуры из оператора select. Это для mysql

SELECT ID, email FROM user PROCEDURE simpleproc();

введите ошибку ERROR 1106 (42000): Неизвестная процедура 'simpleproc'

mysql> call simpleproc();

Запрос ОК, 0 строк затронуты (0,21 с)

где as

SELECT ID, email FROM user PROCEDURE ANALYSE();

работы

4b9b3361

Ответ 1

Вы можете вызвать хранимую процедуру из оператора select. Чтобы вызвать процедуру, вы должны использовать следующий синтаксис:

CALL stored_procedure_name (param1, param2, ....)  

Например, вы можете вызвать следующую процедуру:

DELIMITER //

CREATE PROCEDURE `procedure1`(IN var1 INT)
BEGIN
    SELECT var1 + 2 AS result;
END//

а

CALL procedure1(10);

Проверьте этот сайт для справки: http://net.tutsplus.com/tutorials/an-introduction-to-stored-procedures/

Ответ 2

Невозможно выбрать из хранимой процедуры способ, которым вы написали в своем вопросе. см. Это и Это.