我写了个存储过程,通过select从其他表查数据并且update到指定表,结果这个存储过程没有执行成功
BEGIN
DECLARE row_appId INT(2);
DECLARE row_city VARCHAR(10);
DECLARE row_district VARCHAR(10);
DECLARE row_street VARCHAR(10);
DECLARE row_mainbodyId VARCHAR(10);
DECLARE row_alarmType VARCHAR(10);
DECLARE row_alarmCount INT(10);
DECLARE row_dateTime DATE;
DECLARE done INT;
-- 定义游标
DECLARE rs_cursor CURSOR FOR
SELECT
t.appId AS appId,
t.city AS city,t.district AS district,
t.street AS street,t.mainbodyId AS mainbodyId,
w.orderType AS alarmType,
COUNT(1)AS alarmCount ,
DATE(a.alarmTime)AS 'dateTime'
FROM
t_poi t ,
t_alarmorder a,
t_workorder w
WHERE
a.poiId=t.poiId
AND a.orderId= w.orderId
GROUP BY
t.city,
t.district,
t.street,
w.orderType,
DATE(a.alarmTime)
order by
DATE(a.alarmTime);
DECLARE CONTINUE HANDLER FOR NOT FOUND SET done=1;
OPEN rs_cursor;
cursor_loop:LOOP
FETCH rs_cursor INTO row_appId,row_city,row_district,row_street,
row_mainbodyId,row_alarmType,row_alarmCount,row_dateTime; -- 取数据
IF done=1 THEN
leave cursor_loop;
END IF;
-- 更新表
UPDATE rf_day_deviceAlarm SET appId=row_appId,city=row_city,district=row_district,
street=row_street,mainbodyId=row_mainbodyId,alarmType=row_alarmType,
alarmCount=row_alarmCount,dateTime=row_dateTime ;
END LOOP cursor_loop;
CLOSE rs_cursor;
END
`