#创建光标
DECLARE $done INT DEFAULT 0;
DECLARE PMC_CH CURSOR FOR
SELECT A.FBillNo,B.FMethodID,B.FID
FROM WincoBosCombinedPmc A INNER JOIN WincoBosCombinedPmcEntry B
ON(A.FBillNO=B.FWorkNo)
WHERE(B.FOrder=$M_FOrder)AND(B.FMethodID!=2)
ORDER BY B.FEntryID;
DECLARE CONTINUE HANDLER FOR NOT FOUND SET $done=1;SET $maxCount=0;
SET $j=0;
SELECT COUNT(FWorkNo) INTO $maxCount FROM WincoBosCombinedPmcEntry
WHERE(FOrder=$M_FOrder)AND(FMethodID!=2)
GROUP BY FID;
OPEN PMC_CH;
REPEAT
FETCH PMC_CH INTO $T_FWorkNo,$T_FMethodID,$T_FID;
IF NOT $done THEN
IF($T_FMethodID=3)OR($T_FMethodID=4)THEN
UPDATE WincoBosCombinedPmcEntry
SET FEntryID=$maxCount+1
WHERE(FWorkNo=$T_FWorkNo)AND(FID=$T_FID);
SET $maxCount=$maxCount+1;
ELSE
UPDATE WincoBosCombinedPmcEntry
SET FEntryID=$j+1
WHERE(FWorkNo=$T_FWorkNo)AND(FID=$T_FID);
SET $j=$j+1;
END IF;
END IF;
UNTIL $done END REPEAT;
CLOSE PMC_CH;
错误提示为“Result consisted of more than one row”,将红色标记的代码去掉则无问题,大家看看是怎么回事?
DECLARE $done INT DEFAULT 0;
DECLARE PMC_CH CURSOR FOR
SELECT A.FBillNo,B.FMethodID,B.FID
FROM WincoBosCombinedPmc A INNER JOIN WincoBosCombinedPmcEntry B
ON(A.FBillNO=B.FWorkNo)
WHERE(B.FOrder=$M_FOrder)AND(B.FMethodID!=2)
ORDER BY B.FEntryID;
DECLARE CONTINUE HANDLER FOR NOT FOUND SET $done=1;SET $maxCount=0;
SET $j=0;
SELECT COUNT(FWorkNo) INTO $maxCount FROM WincoBosCombinedPmcEntry
WHERE(FOrder=$M_FOrder)AND(FMethodID!=2)
GROUP BY FID;
OPEN PMC_CH;
REPEAT
FETCH PMC_CH INTO $T_FWorkNo,$T_FMethodID,$T_FID;
IF NOT $done THEN
IF($T_FMethodID=3)OR($T_FMethodID=4)THEN
UPDATE WincoBosCombinedPmcEntry
SET FEntryID=$maxCount+1
WHERE(FWorkNo=$T_FWorkNo)AND(FID=$T_FID);
SET $maxCount=$maxCount+1;
ELSE
UPDATE WincoBosCombinedPmcEntry
SET FEntryID=$j+1
WHERE(FWorkNo=$T_FWorkNo)AND(FID=$T_FID);
SET $j=$j+1;
END IF;
END IF;
UNTIL $done END REPEAT;
CLOSE PMC_CH;
错误提示为“Result consisted of more than one row”,将红色标记的代码去掉则无问题,大家看看是怎么回事?
解决方案 »
- mysql C api是否有 在结果中,用字段名key查到value的api?
- 求高手看看这个外键问题
- Mysql 5.0中建立表之间关联的条件是什么,我这里为什么总是报错,请高手指点
- 之前a=2经过sql处理后得到 200%
- mysql分区表路径设置的问题
- 求一SQL语句,同时调用3个表~(但是抱歉没分)
- 我用php4+mysql,4.0.8做的程序,在PHP5+mysql4.1.2解析全显示?????? ,有谁可以帮我分析分析问题是出在哪里
- 小妹不知这个函数怎么实现呢,请各位指导一下~~~
- SQL语句执行顺序的疑问
- 求助:一个sql查询问题,求大佬指教(本人是自学小白)
- 关于数据库乱码问题,谢谢高手赐教
- 有没详细点的PHP操作mysql的书,给介绍个吧
WHERE(FOrder=$M_FOrder)AND(FMethodID!=2)
GROUP BY FID;返回的记录多于1条,检查一下
WHERE(FOrder=$M_FOrder)AND(FMethodID!=2)
GROUP BY FID;改成,把GROUP BY FID去掉SELECT COUNT(FWorkNo) INTO $maxCount FROM WincoBosCombinedPmcEntry
WHERE(FOrder=$M_FOrder)AND(FMethodID!=2) ;
(
SELECT COUNT(FWorkNo) as mcnt FROM WincoBosCombinedPmcEntry
WHERE(FOrder=$M_FOrder)AND(FMethodID!=2)
GROUP BY FID
) t;