Просмотрите хранимую процедуру / функциональное определение в MySQL

Чему команда MySQL должна просмотреть определение хранимой процедуры или функции, подобной sp_helptext в Microsoft SQL Server?

Я знаю это SHOW PROCEDURE STATUS отобразит список доступных процедур. Я должен видеть определение единственной процедуры.

69
задан David Harkness 6 July 2014 в 23:37
поделиться

4 ответа

SHOW CREATE PROCEDURE <name>

Возвращает текст ранее определенной хранимой процедуры, которая была создана с использованием оператора CREATE PROCEDURE. Обмен PROCEDURE на FUNCTION для сохраненной функции.

.
105
ответ дан 24 November 2019 в 13:42
поделиться
SHOW CREATE PROCEDURE proc_name;

возвращает определение proc_name

9
ответ дан 24 November 2019 в 13:42
поделиться

Вы можете использовать это:

SELECT ROUTINE_DEFINITION FROM INFORMATION_SCHEMA.ROUTINES
WHERE ROUTINE_SCHEMA = 'yourdb' AND ROUTINE_TYPE = 'PROCEDURE' AND ROUTINE_NAME = "procedurename";
37
ответ дан 24 November 2019 в 13:42
поделиться

что-то вроде:

DELIMITER //

CREATE PROCEDURE alluser()
BEGIN
   SELECT *
   FROM users;
END //

DELIMITER ;

чем:

SHOW CREATE PROCEDURE alluser

дает результат:

'alluser', 'STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER', 'CREATE DEFINER=`root`@`localhost` PROCEDURE `alluser`()
BEGIN
   SELECT *
   FROM users;
END'
5
ответ дан 24 November 2019 в 13:42
поделиться
Другие вопросы по тегам:

Похожие вопросы: