Покинул форум
Сообщений всего: 116
Дата рег-ции: Дек. 2012
Помог: 0 раз(а)
Хочу попробовать использовать хранимые процедуры и вот возник вопрос: "А нужно?".
Сделал простенькую процедуру с 1 селектом, время ее выполнения: 0.44
Время выполнения этого же запроса без процедуры: 0.04
Скриншот: http://clip2net[dot]com/s/5t2Xzj
0.4 это уже прилично, поэтому подскажите стоит ли в данном случае использовать процедуру и когда ее вообще нужно использовать?
EuGen
Отправлено: 28 Июля, 2013 - 20:55:15
Профессионал
Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007 Откуда: Berlin
Помог: 707 раз(а)
Если речь идёт о MySQL, то там механизм хранимых процедур оставляет желать лучшего (не путать с триггерами) - поэтому почти всегда имеет смысл выполнять операции вместо хранимых процедур в приложении. Главная причина, по которой применяют хранимые процедуры - случаи, когда требуется исполнять множество действий на стороне БД, которые нельзя выполнить атомарно (то есть едино) другим способом. Например, не все запросы в MySQL можно объединить в транзакции (DDL - запросы типа ALTER, CREATE и т.п. - нельзя в них включать) - и, если нужно сделать так, чтобы действия происходили атомарно в случае DDL - следует использовать хранимые процедуры.
См. также http://stackoverflow[dot]com/questio[dot][dot][dot]vs-complex-query
----- Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.