php - Mysql存储过程where子句

标签 php sql mysql stored-procedures

好的,让我再试一次。

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 ;

我从浏览器得到的错误: “ fatal error :调用非对象上的成员函数 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 ;

关于php - Mysql存储过程where子句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2655900/

相关文章:

centos - PHP 无法连接到 CentOS 7 上的 PostgreSQL

php - OOP概念理解

MySQL SQL 查询

sql 语句,现在 - unix/epoch 时间 6 个月

php - mysql 查询的输出结果依赖于 MySQL 数组中选定的行

php - 使用 Symfony Doctrine 从 2 个表中查询平均值

php - 无效数据源 PHP PDO Mysql

php - 完整的安全图像上传脚本

mysql - SQL 表的不同值

php - MySQL 和 PHP 中的全文搜索不起作用