Вызов определяемой пользователем хранимой процедуры из оператора select mysql - PullRequest
15 голосов
/ 28 ноября 2011

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

SELECT ID, email FROM user PROCEDURE simpleproc();

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

mysql> call simpleproc();

Запрос в порядке, затронуто 0 строк (0,21 сек)

где

SELECT ID, email FROM user PROCEDURE ANALYSE();

работает

1 Ответ

0 голосов
/ 28 ноября 2011

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

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

Например, вы можете ВЫЗВАТЬ следующую процедуру:

DELIMITER //

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

as

CALL procedure1(10);

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

...