вызов stored procedure в mysql из php
Спасибо за ссылку. В используемой мною процедуре вывод есть результат SELECT'a. Каким образом должен тогда задаваться параметр OUT? Я немножко новичёк в mysql, но не увидел типа данных array.
Как в мускуле - хз. Возможно просто второй селект который ты вызываешь после call для получения новых значений параметров вернет тебе все нужное.
В общем, проще вставить этот select в тело кода. Тем более, что не уверен насчёт серьёзного увеличения производительности в случае использования хранимых процедур. Кто-нибудь может авторитетно сказать/показать что будет быстрее работать и даст меньшую нагрузку на сервер: select из нескольких таблиц с длинным where-условием вызванный непосредственно из php кода или использование процедуры с тем же селектом?
select из нескольких таблиц с длинным where-условием вызванный непосредственно из php кода или использование процедуры с тем же селектом?должно быть однохуйственно
должно быть однохуйственноесли делать prepare. иначе он будет компилировать толстый запрос при каждом вызове.
Если делать prepare, то скорость одинакова, если не делать prepare, то при вызове хранимки "он будет компилировать толстый запрос" и работать с процедурой становится медленнее?
при первом вызове хранимки она компилится, и потом исползуется уже скомпилированная (иногда перекомпилится, когда надо).
есои ты подготовишь (prepare) пакет, он тоже скомпилируется, как и тело хранимки. после этого ты его можешь использовать так же быстро, как и хранимку, не тратя время на компиляцию. проблема возникнет только если у тебя пакет формируется динамически.
$query = "CALL personnel_eng($id)";А "SELECT personnel_eng($id)" не поможет?
Оставить комментарий
Dmitry08
В базе сделана процедура personnel_eng(IN id INT получающая параметр и выполняющая один большой select (для теста при вызове в кодеполучается ответ:
PROCEDURE labwebdb.personnel_eng can't return a result set in the given context
При вызове из консоли mysql получаю ожидаемый результат. Каким образом получить результат выполнения mysql-процедуры в php?