带参数的存储过程

时间:2011-08-19 10:38:08

标签: mysql sql database stored-procedures

我的问题是:存储过程接收给定航班和给定日期作为输入,并显示客户呼叫列表,其中包括姓名,地址和电话号码作为输出。 查询很简单,我可以从单个表中获取所有数据但是,我不知道如何在运行过程时接受输入,然后将其与内部值进行比较。 查询是:

select NAME, ADDRESS, PHONE
    FROM SCH_FLIGHTS SF, PASSENGERS P
    WHERE SF.DATE(input) = P.DATE

非常感谢您帮助我...只需要将该查询转换为存储过程,该过程需要2个输入,日期和上述问题中提到的flight_no。

感谢。

1 个答案:

答案 0 :(得分:0)

创建SP(不知道确切的数据类型,所以我只是猜测):

delimiter //
CREATE PROCEDURE NameOfProcedure(input VARCHAR(32))
 BEGIN
     select NAME, ADDRESS, PHONE
    FROM SCH_FLIGHTS SF, PASSENGERS P
    WHERE SF.DATE(input) = P.DATE
END
//

你的PHP代码看起来像这样(出于安全原因,TODO用查询参数替换$ input): $ result = $ db-> query(“call NameOfProcedure($ input)”);