我正在尝试更新 MySQL 数据库中的存储函数。更新将发布到多个设备,因此我通过 update.sql 文件进行更新。
这是函数
DROP FUNCTION `STAFF_MPT`;
CREATE DEFINER=`jelena`@`%` FUNCTION `STAFF_MPT`(`par_stocktake_staff_id` INT) RETURNS DECIMAL(20,0) NOT DETERMINISTIC CONTAINS SQL SQL SECURITY DEFINER BEGIN
DECLARE proc_total INT;
DECLARE proc_time INT;
SET proc_total = (SELECT SUM(quantity) FROM stocktake_scans WHERE stocktake_staff_id = par_stocktake_staff_id);
SET proc_time = (SELECT TIMESTAMPDIFF( SECOND , MIN( scan_date ) , MAX( scan_date ) ) AS area_time
FROM stocktake_scans
WHERE stocktake_staff_id = par_stocktake_staff_id
);
RETURN (proc_total/proc_time)*3600;
END
Run Code Online (Sandbox Code Playgroud)
刚才测试组给我报告说使用这个功能的报告没有正常生成。我尝试在 PMA SQL 查询窗口中运行代码并得到以下结果:
You have an error in your SQL syntax; …Run Code Online (Sandbox Code Playgroud) mysql ×1