mysql游标未加载变量
我在下面的代码中无法使FETCH语句正常工作。它实际上并没有将任何数据放入变量registerName。registerName的值与FETCH语句之前的值相同。谢谢mysql游标未加载变量,mysql,cursor,Mysql,Cursor,我在下面的代码中无法使FETCH语句正常工作。它实际上并没有将任何数据放入变量registerName。registerName的值与FETCH语句之前的值相同。谢谢 -- Declare variables/cursors needed for building pivot query DECLARE qry VARCHAR(8000); DECLARE registerName VARCHAR(128) DEFAULT ''; DECLARE done BOOLEAN DEFAULT 0;
-- Declare variables/cursors needed for building pivot query
DECLARE qry VARCHAR(8000);
DECLARE registerName VARCHAR(128) DEFAULT '';
DECLARE done BOOLEAN DEFAULT 0;
DECLARE registers CURSOR
FOR
SELECT RegisterName
FROM Register r
INNER JOIN EgaugeDevice ed ON ed.id = r.EgaugeDeviceId
INNER JOIN Site s ON s.id = ed.SiteId
INNER JOIN Facility f ON f.id = s.FacilityId
WHERE ShowInSite = 1 AND FacilityName = FACILITY;
DECLARE CONTINUE HANDLER FOR SQLSTATE '02000' SET done=1;
-- Use temporary table to get results from instantaneous view
CREATE TEMPORARY TABLE IF NOT EXISTS instData (
id INT,
RegisterId INT,
InstantaneousValue BIGINT,
Date_Time DATETIME,
Time_Stamp BIGINT
);
TRUNCATE TABLE instData;
INSERT INTO instData(id, RegisterId, InstantaneousValue, Date_Time, Time_Stamp)
SELECT id, RegisterId, InstantaneousValue, Date_Time, Time_Stamp
FROM vRegisterDataInstantaneous
WHERE Date_Time >= now() - INTERVAL 1 DAY
ORDER BY Time_Stamp DESC;
-- build pivot query from registers listed in Register table
OPEN registers;
FETCH registers INTO registerName;
select registerName AS Test;
CLOSE registers;
列和变量
RegisterName
是否可能不具有相同的名称?这可能会引起冲突,就是这样。我把registerName改成了reg,现在可以用了