Mysql хранимая процедура, где пункт - PullRequest
3 голосов
/ 17 апреля 2010

Хорошо, позвольте мне попробовать это снова.

query ("CALL getemployee ('$ eml')"); $ result = $ sql-> fetch_array (); ?> Это моя хранимая процедура:

Delimiter //
Create procedure getemployee(in eml varchar(50))
Begin
  Select * from employees where email = eml;
End//
Delimiter ;

Ошибка, которую я получаю из браузера: «Неустранимая ошибка: вызов функции-члена fetch_array () для необъекта ...».

Я использую phpmyadmin версии 3.2.4 и версию клиента mysql: 5.1.41

Ответы [ 3 ]

2 голосов
/ 17 апреля 2010

Ваш CREATE PROCEDURE оператор представляется недействительным.

Вам нужно дать имя вашей процедуре и параметру, который вы передаете. Поэтому вы можете попробовать что-то вроде следующего примера:

DELIMITER //
CREATE PROCEDURE procName (IN eml varchar(50))
BEGIN
   SELECT * FROM employees WHERE email = eml;
END//    
DELIMITER ;
1 голос
/ 17 апреля 2010

Используемая вами переменная eml не определена. Не должно быть так:

Create procedure getemployee (in eml varchar(50))
0 голосов
/ 07 января 2013
CREATE PROCEDURE get_customers(IN inCustomerIdList VARCHAR(100))
BEGIN

  SELECT first_name, last_name, email FROM tbl_customers  
  WHERE customer_id IN (inCustomerIdList);

END$$
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...