Как просмотреть мои хранимые процедуры в phpMyAdmin? - PullRequest
55 голосов
/ 24 мая 2011

Я создал хранимую процедуру в phpMyAdmin

CREATE PROCEDURE Sample()
SELECT * FROM feedback

Где можно посмотреть эту процедуру? Если это невозможно в phpMyAdmin, что это за хорошие программы, которые имеют возможность писать, хранить и просматривать хранимые процедуры, таблицы и т. Д.?

Ответы [ 11 ]

76 голосов
/ 13 сентября 2012

Просмотр хранимых процедур в phpmyadmin:

Запрос:

SELECT routine_definition
FROM information_schema.routines
WHERE 
routine_name = 'procedure_name' AND routine_schema = 'databasename';

Вот как это сделать в phpmyadmin.

phpmyadmin screenshot

Опция routines доступна в phpmyadmin.Ссылка не видна в PHPmyadmin, пока у вас не будет хотя бы одной хранимой процедуры.Посмотрите изображение выше и нажмите на ссылку routines на вкладке structure.

19 голосов
/ 24 мая 2011
select routine_definition
from information_schema.routines
where routine_schema = 'db_name'
and routine_name = 'sp_name';
6 голосов
/ 11 марта 2012

Этот ответ показывает, как их просматривать без сценария.

«После того, как вы создали хранимую процедуру, она появится в наборе полей« Подпрограммы »под вашими таблицами (на вкладке« Структура »), и вы можете легко изменить / удалить ее.»

5 голосов
/ 17 августа 2011

Вы можете выбрать «information_schema» в качестве базы данных и запросить все записи из таблицы «рутины», если вы не хотите использовать SQL каждый раз.

4 голосов
/ 24 мая 2011

Короче говоря, вы можете использовать этот sql

SHOW CREATE PROCEDURE Sample;

Больше информации здесь

ОБНОВЛЕНИЕ: Если вы не помните имена, вы можете запросить базу данных INFORMATION_SCHEMA, чтобы увидеть все процедуры (ну, вы можете использовать LIKE на ROUTINE_NAME, если вы помните частичное имя)

SELECT ROUTINE_TYPE, ROUTINE_NAME, ROUTINE_DEFINITION FROM INFORMATION_SCHEMA.ROUTINES WHERE ROUTINE_SCHEMA='dbname';
3 голосов
/ 16 октября 2014

В версии PHPMYADMIN enter image description here 3.5.2.2 вы просто нажимаете на ссылку подпрограмм вверху.Смотрите прикрепленное изображение

3 голосов
/ 25 августа 2012

в phpMyAdmin, нажмите на вашу базу данных (не на столе), затем нажмите «+ Рутины».

Там вы можете редактировать / удалять все ваши хранимые процедуры

3 голосов
/ 02 июня 2012
show procedure status;      -- will show you the stored procedures.
show create procedure MY_PROC;  -- will show you the definition of a procedure. 
help show;          -- show all the available options for the show command.
2 голосов
/ 31 октября 2014

Не забывайте, что на маленьких экранах вам придется использовать меню «больше». phpMyAdmin

1 голос
/ 30 сентября 2012

Использование интерфейса базы данных Adminer . В отличие от PHPMyAdmin, он прекрасно способен просматривать, редактировать и вызывать хранимые процедуры, где PHPMyAdmin завершается ошибкой с множеством ошибок (ошибки при попытке запустить инструкцию SQL для ее создания, ошибки при попытке вызвать одну из них, ошибки при попытке изменить один уже создан, помимо невозможности перечислить определенные ... Мне действительно интересно, что PHPMyAdmin делает с текстом SQL-запросов перед его отправкой в ​​БД, это страшно).

Просто скопируйте PHP-файл Adminer в каком-то месте вашего веб-сервера, откройте соответствующий URL. После того, как вы вошли в систему и выбрали базу данных, под списком таблиц вы увидите список хранимых процедур с кнопкой вызова. Нажав на ссылку процедуры, вы также сможете изменить (отредактировать) ее.

Честно говоря, я рекомендую вам отказаться от PHPMyAdmin, он совершенно неспособен должным образом справиться с этим (обратите внимание, что SQLBuddy тоже каким-то образом терпит неудачу).

- редактировать -

Для полноты вы также можете перечислить хранимые процедуры с этим запросом SQL:

show procedure status;

Или этот, чтобы получить процедуру, имя которой известно:

show procedure status where Name = 'name';
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...