MySQL 存储过程变量


MySQL Stored Procedure variable

我正在尝试为MySQL数据库创建一个存储过程。存储过程应该获取每个员工在特定午餐项目上花费的金额。我遇到的问题是我无法让存储过程返回任何值。当我将其作为SQL查询运行并输入我的变量应该是的日期时,它可以正常工作。我正在使用MySQL。这是我的存储过程:

 DELIMITER $$ 
 CREATE PROCEDURE `class`.`PricePaid`(varBeginningDate DATE) 
 BEGIN
SELECT Item_Desc, SUM( Item_Price ) AS  'Total Price Paid'
FROM Lunch, Item, Lunch_item
WHERE Lunch.Lunch_id = Lunch_item.Lunch_id
AND Item.Item_Number = Lunch_item.Item_Number
AND DATEDIFF(Lunch.Lunch_Date, "'" + varBeginningDate + "'") > 0
GROUP BY Item.Item_Desc;
END

我的 php 代码调用该函数是这样的

<?php
include("Functions.php");
if(isset($_POST['SubmitPricePaid'])){
$strSQL = "CALL `class`.`PricePaid`('{$_POST[$PricePaidDate]}');";
}
?>
<?php if(isset($_POST['SubmitPricePaid'])){ 
        print_report($strSQL, $db); 
      }
?>

让我们从调试开始:

<?php
include("Functions.php");
if(isset($_POST['SubmitPricePaid'])){
$strSQL = "CALL `class`.`PricePaid`('{$_POST[$PricePaidDate]}');";
var_dump($strSQL);
var_dump($db);
exit(); //EDITED
print_report($strSQL, $db); 
}
?>

你能发布var_dump的结果吗?我需要看到这些结果