PHP-Mysql存储过程where子句

好,让我再试一次.

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

最佳答案
您的CREATE PROCEDURE语句似乎无效.

您需要为过程和传递的参数命名.因此,您可能想尝试以下示例:

DELIMITER //
CREATE PROCEDURE procName (IN eml varchar(50))
BEGIN
   SELECT * FROM employees WHERE email = eml;
END//    
DELIMITER ;

相关文章

navicat查看某个表的所有字段的详细信息 navicat设计表只能一...
文章浏览阅读4.3k次。转载请把头部出处链接和尾部二维码一起...
文章浏览阅读488次。恢复步骤概要备份frm、ibd文件如果mysql...
文章浏览阅读225次。当MySQL单表记录数过大时,增删改查性能...
文章浏览阅读1.5k次。Mysql创建、删除用户MySql中添加用户,新...
MySQL是一种开源的关系型数据库管理系统,被广泛应用于各类应...